更新工作区网络配置

重要

此功能目前以公共预览版提供。

本页提供了有关更新现有 Azure Databricks 工作区的虚拟网络(VNet)配置的分步说明。 这样,就可以将工作区从 Azure Databricks 托管的 VNet 迁移到自己的 VNet、称为 VNet 注入的进程,或修改现有 VNet 注入工作区的 VNet 配置。

为什么将工作区迁移到 VNet 注入部署

将工作区迁移到 VNet 注入部署可提供关键的网络自定义和安全功能:

  • 完全网络控制:使用 Azure ExpressRoute 等服务定义自定义路由、防火墙规则和与本地网络的连接。
  • 增强安全性:实施高级安全功能,例如网络安全组(NSG),并根据组织的策略限制出站流量。
  • 灵活的 IP 寻址:控制 VNet 和子网 IP 地址范围,以避免企业网络内的冲突。

在您开始之前

  • 请确认工作区不得配置为使用 Azure 负载均衡器。 如果这适用于你的工作区,请联系你的帐户团队以获取帮助。
  • 若要防止中断,请终止工作区中所有正在运行的群集和作业。 更新完成后,可以重启它们。

从托管 VNet 迁移到 VNet 注入

按照以下步骤将部署在 Azure Databricks 托管的 VNet 中的工作区转换为自己的 VNet 中注入的 VNet 工作区。

此实现方法使用具有 NAT 网关的 ARM 模板。 有关改用 Azure 门户 UI 的说明,请参阅 将托管工作区升级到 VNet 注入工作区

步骤 1:创建网络安全组 (NSG)

  1. 在 Azure 门户中,搜索并选择“ 部署自定义模板”。

  2. 单击“在编辑器中生成自己的模板”。

  3. 将以下 ARM 模板粘贴到编辑器中,然后单击“ 保存”。

    {
      "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
        "location": {
          "type": "string",
          "defaultValue": "[resourceGroup().location]",
          "metadata": { "description": "Location for all resources." }
        },
        "NSGName": {
          "type": "string",
          "defaultValue": "databricks-nsg-01",
          "metadata": { "description": "The name for the Network Security Group." }
        }
      },
      "resources": [
        {
          "apiVersion": "2020-05-01",
          "type": "Microsoft.Network/networkSecurityGroups",
          "name": "[parameters('NSGName')]",
          "location": "[parameters('location')]"
        }
      ],
      "outputs": {
        "existingNSGId": {
          "type": "string",
          "value": "[resourceId('Microsoft.Network/networkSecurityGroups', parameters('NSGName'))]"
        }
      }
    }
    
  4. “基本信息 ”选项卡上,配置以下参数:

    • 订阅:选择包含工作区的订阅。
    • 资源组:选择与工作区相同的资源组,而不是托管资源组。
    • 位置:确保这与工作区的区域匹配。
  5. 单击“查看 + 创建”,然后单击“创建”。 记 existingNSGId 下部署输出中的说明。

步骤 2:创建新的 VNet

  1. 返回 “部署自定义模板”。

  2. 在模板搜索框中,找到 Azure 快速入门模板 databricks-vnet-for-vnet-injection-with-nat-gateway

  3. 单击 “选择模板”。

  4. “基本信息 ”选项卡上,配置以下参数:

    • 订阅: 选择包含工作区的订阅。
    • 资源组: 选择与工作区相同的资源组。
    • NSG ID: 粘贴在步骤 1 中创建的 NSG 的资源 ID。
    • VNet 名称: 为新 VNet 提供唯一名称。
    • VNet CIDR专用子网 CIDR公共子网 CIDR: 定义地址范围。 确保它们足够大,以满足你的工作区需求。
  5. 单击“查看 + 创建”,然后单击“创建”

    注释

    确保 VNet 名称 在资源组中是唯一的。 如果名称已存在,模板将尝试修改现有 VNet,而不是创建新的 VNet。

步骤 3:更新工作区

  1. 在 Azure 门户中,转到 Azure Databricks 工作区。

  2. 在左侧边栏中的 “自动化”下,单击“ 导出模板”。

  3. 等待模板完成加载,然后单击“ 部署”。

  4. 在自定义部署页上,单击“ 编辑模板”。

  5. 在编辑器中,进行以下更改:

    • apiVersion 设置为 2025-08-01-preview

    • 如果存在这些参数,请从 properties 节中删除以下参数:

      • vnetAddressPrefix
      • natGatewayName
      • publicIpName
    • 将以下参数 resources.properties.parameters添加到其中,将占位符值替换为步骤 2 中的新 VNet 和子网名称。

      {
        "customPrivateSubnetName": {
          "value": "your-private-subnet-name"
        },
        "customPublicSubnetName": {
          "value": "your-public-subnet-name"
        },
        "customVirtualNetworkId": {
          "value": "/subscriptions/<your-subscription-id>/resourceGroups/<your-resource-group>/providers/Microsoft.Network/virtualNetworks/<your-vnet-name>"
        }
      }
      
  6. 单击“ 保存”。

将 VNet 注入的工作区移动到新的 VNet

按照 从托管 VNet 迁移到 VNet 注入 的每个步骤,将现有通过 VNet 注入的工作区迁移到新的 VNet。

注释

如果工作区使用 后端专用链接连接,则会将其绑定到旧的 VNet。 迁移到新的 VNet 后,旧的专用链接连接会中断。 必须先手动删除旧的专用终结点及其相应的专用 DNS 区域,然后才能为新的 VNet 创建新的专用链接连接。

替换 VNet 注入工作区中的现有子网

使用以下步骤将现有子网替换为 VNet 注入的工作区中的新子网。

步骤 1:创建新子网

  1. 在 Azure 门户中,转到工作区页,然后单击 VNet 链接。

  2. 在 VNet 页中,单击左侧栏中的 “子网 ”。

  3. 单击“ + 子网 ”创建新的子网。

  4. 根据需求更新 名称和IPv4 字段。

  5. 单击“ 添加” 以创建子网。

步骤 2:更新工作区

  1. 按照步骤 3 中的说明作 :更新工作区 以编辑工作区模板。

  2. apiVersion 更改为 2025-08-01-preview.

  3. 使用新的子网名称更新以下一个或两个字段:

    • customPrivateSubnetName
    • customPublicSubnetName
  4. 确保所有其他字段保持不变。

  5. 单击“保存”以应用更改。

测试验证

完成任何工作区网络配置更新后,使用以下测试矩阵确认工作区按预期运行:

测试 Steps
新群集按预期工作 创建新的群集并运行作业
现有群集按预期工作 使用更新之前创建的群集运行作业

注释

大多数更改将在 15 分钟内刷新。 等待工作区在运行验证测试之前返回到 “活动 ”状态。

局限性

  • 公共预览版期间尚不支持 Terraform。
  • 不支持调整 Azure Databricks 工作区使用的子网大小。