在 Azure 中使用 IPv6 部署虚拟机规模集

本文介绍如何在 Azure 虚拟网络中使用双堆栈外部负载均衡器部署双堆栈(IPv4 + IPv6)虚拟机规模集。 您将从与单个 VM 描述的步骤相似的步骤开始:

  1. 创建 IPv4 和 IPv6 公共 IP。
  2. 创建双栈负载均衡器。
  3. 创建网络安全组 (NSG) 规则。

唯一与单个 VM 不同的步骤是创建使用虚拟机规模集资源的网络接口 (NIC) 配置:networkProfile/networkInterfaceConfigurations。 JSON 结构类似于单个 VM 使用的 Microsoft.Network/networkInterfaces 对象,不过,其中添加了使用 "primary": true 属性将 NIC 和 IPv4 IpConfiguration 设置为主接口的代码,如以下示例中所示:

  "networkProfile": {
    "networkInterfaceConfigurations": [
      {
        "name": "[variables('nicName')]",
        "properties": {
          "primary": true,
          "networkSecurityGroup": {
            "id": "[resourceId('Microsoft.Network/networkSecurityGroups','VmssNsg')]"
          },
          "ipConfigurations": [
            {
              "name": "[variables('ipConfigName')]",
              "properties": {
                "primary": true,
                "subnet": {
                  "id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', 'MyvirtualNetwork','Mysubnet')]"
                },
                "privateIPAddressVersion":"IPv4",                       
                "publicipaddressconfiguration": {
                  "name": "pub1",
                  "properties": {
                    "idleTimeoutInMinutes": 15
                  }
                },
                "loadBalancerBackendAddressPools": [
                  {
                    "id": "[resourceId('Microsoft.Network/loadBalancers/backendAddressPools', 'loadBalancer', 'bePool'))]"
                  }
                ],
                "loadBalancerInboundNatPools": [
                  {
                    "id": "[resourceId('Microsoft.Network/loadBalancers/inboundNatPools', 'loadBalancer', 'natPool')]"
                  }
                ]
              }
            },
            {
              "name": "[variables('ipConfigNameV6')]",
              "properties": {
                "subnet": {
                  "id": "[resourceId('Microsoft.Network/virtualNetworks/subnets','MyvirtualNetwork','Mysubnet')]"
                },
                "privateIPAddressVersion":"IPv6",
                "loadBalancerBackendAddressPools": [
                  {
                    "id": "[resourceId('Microsoft.Network/loadBalancers/backendAddressPools', 'loadBalancer','bePoolv6')]"
                  }
                ]
              }
            }
          ]
        }
      }
    ]
  }

JSON 虚拟机规模集示例模板

若要部署具有双堆栈(IPv4 + IPv6)的虚拟机规模集,并配有双堆栈的外部负载均衡器和虚拟网络的样本模板,请查看示例模板here

后续步骤

若要详细了解 Azure 虚拟网络中的 IPv6 支持,请参阅 iPv6 Azure Virtual Network是什么?