Rede para Conjuntos de Dimensionamento de Máquinas Virtuais do Azure

Quando você implanta um Conjunto de Escala de Máquina Virtual do Azure por meio do portal, determinadas propriedades de rede são padrão, por exemplo, um Balanceador de Carga do Azure com regras NAT de entrada. Este artigo descreve como utilizar algumas das funcionalidades de rede mais avançadas que podem ser configuradas em conjuntos de dimensionamento.

Pode configurar todas as funcionalidades abordadas neste artigo através de modelos do Azure Resource Manager. Também estão incluídos exemplos da CLI do Azure e do PowerShell para determinadas funcionalidades.

Redes Aceleradas

As Redes Aceleradas do Azure melhoram o desempenho da rede ao permitirem a virtualização de E/S de raiz única (SR-IOV) para uma máquina virtual. Para saber mais sobre a utilização das Redes aceleradas, consulte Redes aceleradas para máquinas virtuais Windows ou Linux. Para utilizar as redes aceleradas com conjuntos de dimensionamento, defina enableAcceleratedNetworking como Verdadeiro nas definições networkInterfaceConfigurations do seu conjunto. Por exemplo:

"networkProfile": {
    "networkInterfaceConfigurations": [
    {
      "name": "niconfig1",
      "properties": {
        "primary": true,
        "enableAcceleratedNetworking" : true,
        "ipConfigurations": [
          ...
        ]
      }
    }
   ]
}

Conjuntos de Dimensionamento de Máquina Virtual do Azure com o Azure Load Balancer

Consulte Azure Load Balancer e Virtual Machine Scale Sets para saber mais sobre como configurar o seu Standard Load Balancer com Conjuntos de Escala de Máquina Virtual com base no seu cenário.

Adicionar um conjunto de escala de máquina virtual a um gateway de aplicativo

Para adicionar um conjunto de escala ao pool de back-end de um Application Gateway, faça referência ao pool de back-end do Application Gateway no perfil de rede do conjunto de escalas. Isso pode ser feito ao criar o conjunto de escala (consulte Modelo ARM abaixo) ou em um conjunto de escala existente.

Adicionando conjuntos de dimensionamento de máquina virtual de orquestração uniforme a um gateway de aplicativo

Ao adicionar Conjuntos de Escala de Máquina Virtual Uniforme ao pool de back-end de um Application Gateway, o processo será diferente para conjuntos de escala novos ou existentes:

  • Para novos conjuntos de escala, faça referência ao ID do pool de back-end do Application Gateway no perfil de rede do modelo do conjunto de escalas, em uma ou mais configurações IP da interface de rede. Quando implantadas, as instâncias adicionadas ao seu conjunto de escala serão colocadas no pool de back-end do Application Gateway.
  • Para conjuntos de escala existentes, primeiro adicione o ID do pool de back-end do Application Gateway no perfil de rede do modelo do conjunto de escala e, em seguida, aplique o modelo de suas instâncias existentes por meio de uma atualização. Se a política de atualização do conjunto de escala for Automatic ou Rolling, as instâncias serão atualizadas para você. Se for Manual, você precisará atualizar as instâncias manualmente.
  1. Crie um gateway de aplicativo e um pool de back-end na mesma região do conjunto de escalas, se ainda não tiver um
  2. Navegue até o Conjunto de Dimensionamento de Máquina Virtual no Portal
  3. Em Configurações, abra o painel Rede
  4. No painel Rede, selecione a guia Balanceamento de carga e clique em Adicionar balanceamento de carga
  5. Selecione Application Gateway na lista suspensa Opções de balanceamento de carga e escolha um Application Gateway existente
  6. Selecione o pool de back-end de destino e clique em Salvar
  7. Se a Política de Atualização do conjunto de escala for 'Manual', navegue até o painel Instâncias de Configurações> para selecionar e atualizar cada uma das instâncias

Adicionando conjuntos flexíveis de escala de máquina virtual de orquestração a um gateway de aplicativo

Ao adicionar um conjunto de escala flexível a um Application Gateway, o processo é o mesmo que adicionar VMs autônomas ao pool de back-end de um Application Gateway - você atualiza a configuração IP da interface de rede da máquina virtual para fazer parte do pool de back-end. Isso pode ser feito por meio da configuração do Application Gateway ou da configuração da interface de rede da máquina virtual.

Nota

Tenha em atenção que o gateway de aplicação tem de estar na mesma rede virtual do conjunto de dimensionamento, mas tem de estar numa sub-rede diferente do conjunto de dimensionamento.

Definições de DNS Configuráveis

Por predefinição, os conjuntos de dimensionamento assumem as definições de DNS específicas da VNet e da sub-rede em que foram criados. Contudo, pode configurar as definições de DNS de um conjunto de dimensionamento diretamente.

Criar um conjunto de dimensionamento com servidores DNS configuráveis

Para criar um conjunto de dimensionamento com uma configuração DNS personalizada através da CLI do Azure, adicione o argumento --dns-servers ao comando vmss create, seguido pelos endereços IP dos servidores separados por espaços. Por exemplo:

--dns-servers 10.0.0.6 10.0.0.5

Para configurar servidores DNS personalizados num modelo do Azure, adicione uma propriedade dnsSettings à secção networkInterfaceConfigurations do conjunto de dimensionamento. Por exemplo:

"dnsSettings":{
    "dnsServers":["10.0.0.6", "10.0.0.5"]
}

Criar um conjunto de dimensionamento com nomes de domínio de máquinas virtuais configuráveis

Para criar um conjunto de dimensionamento com um nome DNS personalizado para máquinas virtuais usando a CLI, adicione o argumento --vm-domain-name ao comando Virtual Machine Scale set create, seguido por uma cadeia de caracteres que representa o nome de domínio.

Para definir o nome de domínio num modelo do Azure, adicione uma propriedade dnsSettings à secção networkInterfaceConfigurations do conjunto de dimensionamento. Por exemplo:

"networkProfile": {
  "networkInterfaceConfigurations": [
    {
    "name": "nic1",
    "properties": {
      "primary": true,
      "ipConfigurations": [
      {
        "name": "ip1",
        "properties": {
          "subnet": {
            "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', variables('vnetName'), '/subnets/subnet1')]"
          },
          "publicIPAddressconfiguration": {
            "name": "publicip",
            "properties": {
            "idleTimeoutInMinutes": 10,
              "dnsSettings": {
                "domainNameLabel": "[parameters('vmssDnsName')]"
              }
            }
          }
        }
      }
    ]
    }
}

O resultado para um nome dns de máquina virtual individual teria o formato seguinte:

<vm><vmindex>.<specifiedVmssDomainNameLabel>

IPv4 Público por máquina virtual

Em geral, as máquinas virtuais de conjuntos de dimensionamento do Azure não precisam de ter os seus próprios endereços IP públicos. Para a maioria dos cenários, é mais econômico e seguro associar um endereço IP público a um balanceador de carga ou a uma máquina virtual individual (também conhecida como jumpbox), que encaminha conexões de entrada para dimensionar máquinas virtuais definidas conforme necessário (por exemplo, por meio de regras NAT de entrada).

No entanto, alguns cenários requerem que as máquinas virtuais do conjunto de dimensionamento tenham os seus próprios endereços IP públicos. Um exemplo de um cenário destes são os jogos, em que uma consola tem de fazer uma ligação direta a uma máquina virtual na cloud, que está a fazer o processamento físico do jogo. Outro exemplo é quando as máquinas virtuais têm de fazer ligações externas a outras em várias regiões numa base de dados distribuída.

Criar um conjunto de dimensionamento com IP público por máquina virtual

Para criar um conjunto de dimensionamento que atribui um endereço IP público a cada máquina virtual através da CLI, adicione o parâmetro --public-ip-per-vm ao comando vmss create.

Para criar um conjunto de dimensionamento com um modelo do Azure, confirme que a versão da API do recurso Microsoft.Compute/virtualMachineScaleSets é, no mínimo, a 2017-03-30 e adicione a propriedade JSON publicIpAddressConfiguration à secção ipConfigurations do conjunto. Por exemplo:

"publicIpAddressConfiguration": {
    "name": "pub1",
    "sku": {
      "name": "Standard"
    },
    "properties": {
      "idleTimeoutInMinutes": 15
    }
}

Observe quando os Conjuntos de Dimensionamento de Máquina Virtual com IPs públicos por instância são criados com um balanceador de carga na frente, os IPs da instância são determinados pela SKU do Balanceador de Carga (ou seja, Básico ou Padrão). Se o Conjunto de Dimensionamento de Máquina Virtual for criado sem um balanceador de carga, a SKU dos IPs de instância poderá ser definida diretamente usando a seção SKU do modelo, conforme mostrado acima.

Modelo de exemplo usando um balanceador de carga básico: vmss-public-ip-linux

Como alternativa, um prefixo IP público (um bloco contíguo de IPs públicos de SKU padrão) pode ser usado para gerar IPs no nível da instância em um conjunto de escala de máquina virtual. As propriedades zonais do prefixo serão passadas para os IPs da instância, embora não sejam mostradas na saída.

Modelo de exemplo usando um prefixo IP público: vmms-with-public-ip-prefix

Consultar os endereços IP públicos das máquinas virtuais num conjunto de dimensionamento

Para listar os endereços IP públicos atribuídos às máquinas virtuais do conjunto de dimensionamento através da CLI, utilize o comando az vmss list-instance-public-ips.

Para listar endereços IP públicos definidos em escala usando o PowerShell, use o comando Get-AzPublicIpAddress . Por exemplo:

Get-AzPublicIpAddress -ResourceGroupName myrg -VirtualMachineScaleSetName myvmss

Também pode consultar os endereços IP públicos ao referenciar diretamente o ID de recurso da configuração desses endereços. Por exemplo:

Get-AzPublicIpAddress -ResourceGroupName myrg -Name myvmsspip

Também pode apresentar os endereços IP públicos atribuídos às máquinas virtuais do conjunto de dimensionamento ao consultar o Azure Resource Explorer ou a API REST do Azure com a versão 2017-03-30 ou superior.

Para consultar o Azure Resource Explorer:

  1. Abra o Azure Resource Explorer num browser da Web.
  2. Expanda subscrições no lado esquerdo ao clicar em + junto ao mesmo. Se tiver apenas um item sob subscrições, pode já estar expandido.
  3. Expanda a sua subscrição.
  4. Expanda o seu grupo de recursos.
  5. Expanda fornecedores.
  6. Expanda Microsoft.Compute.
  7. Expanda virtualMachineScaleSets.
  8. Expanda o seu conjunto de dimensionamento.
  9. Clique em publicipaddresses.

Para consultar a API REST do Azure:

GET https://management.azure.com/subscriptions/{your sub ID}/resourceGroups/{RG name}/providers/Microsoft.Compute/virtualMachineScaleSets/{scale set name}/publicipaddresses?api-version=2017-03-30

Exemplo de saída do Azure Resource Explorer e a API REST do Azure:

{
  "value": [
    {
      "name": "pub1",
      "id": "/subscriptions/your-subscription-id/resourceGroups/your-rg/providers/Microsoft.Compute/virtualMachineScaleSets/pipvmss/virtualMachines/0/networkInterfaces/pipvmssnic/ipConfigurations/yourvmssipconfig/publicIPAddresses/pub1",
      "etag": "W/\"a64060d5-4dea-4379-a11d-b23cd49a3c8d\"",
      "properties": {
        "provisioningState": "Succeeded",
        "resourceGuid": "ee8cb20f-af8e-4cd6-892f-441ae2bf701f",
        "ipAddress": "13.84.190.11",
        "publicIPAddressVersion": "IPv4",
        "publicIPAllocationMethod": "Dynamic",
        "idleTimeoutInMinutes": 15,
        "ipConfiguration": {
          "id": "/subscriptions/your-subscription-id/resourceGroups/your-rg/providers/Microsoft.Compute/virtualMachineScaleSets/yourvmss/virtualMachines/0/networkInterfaces/yourvmssnic/ipConfigurations/yourvmssipconfig"
        }
      }
    },
    {
      "name": "pub1",
      "id": "/subscriptions/your-subscription-id/resourceGroups/your-rg/providers/Microsoft.Compute/virtualMachineScaleSets/yourvmss/virtualMachines/3/networkInterfaces/yourvmssnic/ipConfigurations/yourvmssipconfig/publicIPAddresses/pub1",
      "etag": "W/\"5f6ff30c-a24c-4818-883c-61ebd5f9eee8\"",
      "properties": {
        "provisioningState": "Succeeded",
        "resourceGuid": "036ce266-403f-41bd-8578-d446d7397c2f",
        "ipAddress": "13.84.159.176",
        "publicIPAddressVersion": "IPv4",
        "publicIPAllocationMethod": "Dynamic",
        "idleTimeoutInMinutes": 15,
        "ipConfiguration": {
          "id": "/subscriptions/your-subscription-id/resourceGroups/your-rg/providers/Microsoft.Compute/virtualMachineScaleSets/yourvmss/virtualMachines/3/networkInterfaces/yourvmssnic/ipConfigurations/yourvmssipconfig"
        }
      }
    }

Vários endereços IP por NIC

Todas as NICs ligadas a uma VM dentro de um conjunto de dimensionamento podem ter uma ou mais configurações de IP associadas a si. É atribuído um endereço IP privado a cada configuração. Cada configuração também pode ter um recurso de endereço IP público associado a si. Para compreender quantos endereços IP podem ser atribuídos a uma NIC e quantos pode utilizar numa subscrição do Azure, veja os limites do Azure.

Várias NICs por máquina virtual

Pode ter até 8 NICs por máquina virtual, dependendo do tamanho da máquina. O número máximo de NICs por máquina está disponível no artigo relativo aos tamanhos das VMs. Todas as NICs ligadas a uma instância de VM têm de estar ligadas à mesma rede virtual. As NICs podem ligar-se a sub-redes diferentes, mas todas as sub-redes têm de fazer parte da mesma rede virtual.

O exemplo seguinte é um perfil de rede de um conjunto de dimensionamento que mostra várias entradas de NICs e múltiplos IPs públicos por máquina virtual:

"networkProfile": {
    "networkInterfaceConfigurations": [
        {
        "name": "nic1",
        "properties": {
            "primary": true,
            "ipConfigurations": [
            {
                "name": "ip1",
                "properties": {
                "subnet": {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', variables('vnetName'), '/subnets/subnet1')]"
                },
                "publicipaddressconfiguration": {
                    "name": "pub1",
                    "properties": {
                    "idleTimeoutInMinutes": 15
                    }
                },
                "loadBalancerInboundNatPools": [
                    {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/inboundNatPools/natPool1')]"
                    }
                ],
                "loadBalancerBackendAddressPools": [
                    {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/backendAddressPools/addressPool1')]"
                    }
                ]
                }
            }
            ]
        }
        },
        {
        "name": "nic2",
        "properties": {
            "primary": false,
            "ipConfigurations": [
            {
                "name": "ip1",
                "properties": {
                "subnet": {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', variables('vnetName'), '/subnets/subnet1')]"
                },
                "publicipaddressconfiguration": {
                    "name": "pub1",
                    "properties": {
                    "idleTimeoutInMinutes": 15
                    }
                },
                "loadBalancerInboundNatPools": [
                    {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/inboundNatPools/natPool1')]"
                    }
                ],
                "loadBalancerBackendAddressPools": [
                    {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/backendAddressPools/addressPool1')]"
                    }
                ]
                }
            }
            ]
        }
        }
    ]
}

NSG e ASGs por conjunto de dimensionamento

Os Grupos de Segurança de Rede permitem-lhe filtrar o tráfego de e para os recursos do Azure numa rede virtual do Azure com regras de segurança. Os Grupos de Segurança de Aplicação permitem-lhe lidar com a segurança de rede de recursos do Azure e agrupá-los como uma extensão da estrutura da sua aplicação.

Podem ser aplicados Grupos de Segurança de Rede diretamente a um conjunto de dimensionamento. Para tal, adicione uma referência à secção de configuração da interface de rede das propriedades da máquina virtual do conjunto.

Os Grupos de Segurança de Aplicação podem ser diretamente especificados para um conjunto de dimensionamento. Para tal, adicione uma referência à secção de configuração do IP da interface de rede das propriedades da máquina virtual do conjunto de dimensionamento.

Por exemplo:

"networkProfile": {
    "networkInterfaceConfigurations": [
        {
            "name": "nic1",
            "properties": {
                "primary": true,
                "ipConfigurations": [
                    {
                        "name": "ip1",
                        "properties": {
                            "subnet": {
                                "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', variables('vnetName'), '/subnets/subnet1')]"
                            },
                            "applicationSecurityGroups": [
                                {
                                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/applicationSecurityGroups/', variables('asgName'))]"
                                }
                            ],
                "loadBalancerInboundNatPools": [
                                {
                                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/inboundNatPools/natPool1')]"
                                }
                            ],
                            "loadBalancerBackendAddressPools": [
                                {
                                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/backendAddressPools/addressPool1')]"
                                }
                            ]
                        }
                    }
                ],
                "networkSecurityGroup": {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/networkSecurityGroups/', variables('nsgName'))]"
                }
            }
        }
    ]
}

Para verificar se o seu Grupo de Segurança de Rede está associado ao seu conjunto de dimensionamento, utilize o comando az vmss show. O exemplo abaixo utiliza --query para filtrar os resultados e mostrar apenas a secção relevante da saída.

az vmss show \
    -g myResourceGroup \
    -n myScaleSet \
    --query virtualMachineProfile.networkProfile.networkInterfaceConfigurations[].networkSecurityGroup

[
  {
    "id": "/subscriptions/.../resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/nsgName",
    "resourceGroup": "myResourceGroup"
  }
]

Para verificar se o seu Grupo de Segurança da Aplicação está associado ao seu conjunto de dimensionamento, utilize o comando az vmss show. O exemplo abaixo utiliza --query para filtrar os resultados e mostrar apenas a secção relevante da saída.

az vmss show \
    -g myResourceGroup \
    -n myScaleSet \
    --query virtualMachineProfile.networkProfile.networkInterfaceConfigurations[].ipConfigurations[].applicationSecurityGroups

[
  [
    {
      "id": "/subscriptions/.../resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationSecurityGroups/asgName",
      "resourceGroup": "myResourceGroup"
    }
  ]
]

Fazer atualizações de rede para instâncias específicas

Você pode fazer atualizações de rede para instâncias específicas do Conjunto de Dimensionamento de Máquina Virtual.

Você pode PUT usar a instância para atualizar a configuração de rede. Isso pode ser usado para fazer coisas como adicionar ou remover placas de interface de rede (NICs) ou remover uma instância de um pool de back-end.

PUT https://management.azure.com/subscriptions/.../resourceGroups/vmssnic/providers/Microsoft.Compute/virtualMachineScaleSets/vmssnic/virtualMachines/1/?api-version=2019-07-01

O exemplo a seguir mostra como adicionar uma segunda configuração IP à sua NIC.

  1. GET os detalhes de uma instância específica do Conjunto de Escala de Máquina Virtual.

    GET https://management.azure.com/subscriptions/.../resourceGroups/vmssnic/providers/Microsoft.Compute/virtualMachineScaleSets/vmssnic/virtualMachines/1/?api-version=2019-07-01
    

    O seguinte foi simplificado para mostrar apenas parâmetros de rede para este exemplo.

    {
      ...
      "properties": {
        ...
        "networkProfileConfiguration": {
          "networkInterfaceConfigurations": [
            {
              "name": "vmssnic-vnet-nic01",
              "properties": {
                "primary": true,
                "enableAcceleratedNetworking": false,
                "networkSecurityGroup": {
                  "id": "/subscriptions/123a1a12-a123-1ab1-12a1-12a1a1234ab1/resourceGroups/vmssnic/providers/Microsoft.Network/networkSecurityGroups/basicNsgvmssnic-vnet-nic01"
                },
                "dnsSettings": {
                  "dnsServers": []
                },
                "enableIPForwarding": false,
                "ipConfigurations": [
                  {
                    "name": "vmssnic-vnet-nic01-defaultIpConfiguration",
                    "properties": {
                      "publicIPAddressConfiguration": {
                        "name": "publicIp-vmssnic-vnet-nic01",
                        "properties": {
                          "idleTimeoutInMinutes": 15,
                          "ipTags": [],
                          "publicIPAddressVersion": "IPv4"
                        }
                      },
                      "primary": true,
                      "subnet": {
                        "id": "/subscriptions/123a1a12-a123-1ab1-12a1-12a1a1234ab1/resourceGroups/vmssnic/providers/Microsoft.Network/virtualNetworks/vmssnic-vnet/subnets/default"
                      },
                      "privateIPAddressVersion": "IPv4"
                    }
                  }
                ]
              }
            }
          ]
        },
        ...
      }
    }
    
  2. PUT em relação à instância, atualizando para adicionar a configuração IP adicional. Isso é semelhante para adicionar mais networkInterfaceConfiguration.

    PUT https://management.azure.com/subscriptions/.../resourceGroups/vmssnic/providers/Microsoft.Compute/virtualMachineScaleSets/vmssnic/virtualMachines/1/?api-version=2019-07-01
    

    O seguinte foi simplificado para mostrar apenas parâmetros de rede para este exemplo.

      {
      ...
      "properties": {
        ...
        "networkProfileConfiguration": {
          "networkInterfaceConfigurations": [
            {
              "name": "vmssnic-vnet-nic01",
              "properties": {
                "primary": true,
                "enableAcceleratedNetworking": false,
                "networkSecurityGroup": {
                  "id": "/subscriptions/123a1a12-a123-1ab1-12a1-12a1a1234ab1/resourceGroups/vmssnic/providers/Microsoft.Network/networkSecurityGroups/basicNsgvmssnic-vnet-nic01"
                },
                "dnsSettings": {
                  "dnsServers": []
                },
                "enableIPForwarding": false,
                "ipConfigurations": [
                  {
                    "name": "vmssnic-vnet-nic01-defaultIpConfiguration",
                    "properties": {
                      "publicIPAddressConfiguration": {
                        "name": "publicIp-vmssnic-vnet-nic01",
                        "properties": {
                          "idleTimeoutInMinutes": 15,
                          "ipTags": [],
                          "publicIPAddressVersion": "IPv4"
                        }
                      },
                      "primary": true,
                      "subnet": {
                        "id": "/subscriptions/123a1a12-a123-1ab1-12a1-12a1a1234ab1/resourceGroups/vmssnic/providers/Microsoft.Network/virtualNetworks/vmssnic-vnet/subnets/default"
                      },
                      "privateIPAddressVersion": "IPv4"
                    }
                  },
                  {
                    "name": "my-second-config",
                    "properties": {
                      "subnet": {
                        "id": "/subscriptions/123a1a12-a123-1ab1-12a1-12a1a1234ab1/resourceGroups/vmssnic/providers/Microsoft.Network/virtualNetworks/vmssnic-vnet/subnets/default"
                      },
                      "privateIPAddressVersion": "IPv4"
                    }
                  }
                ]
              }
            }
          ]
        },
        ...
      }
    }
    

Conectividade de saída de rede explícita para conjuntos de escala flexíveis

Para melhorar a segurança de rede padrão, os Conjuntos de Dimensionamento de Máquina Virtual com orquestração flexível exigirão que as instâncias criadas implicitamente por meio do perfil de dimensionamento automático tenham conectividade de saída definida explicitamente por meio de um dos seguintes métodos:

  • Para a maioria dos cenários, recomendamos o Gateway NAT anexado à sub-rede.
  • Para cenários com altos requisitos de segurança ou ao usar o Firewall do Azure ou o Network Virtual Appliance (NVA), você pode especificar uma Rota Definida pelo Usuário personalizada como próximo salto pelo firewall.
  • As instâncias estão no pool de back-end de um Balanceador de Carga do Azure SKU Padrão.
  • Anexe um endereço IP público à interface de rede da instância.

Com VMs de instância única e conjuntos de dimensionamento de máquina virtual com orquestração uniforme, a conectividade de saída é fornecida automaticamente.

Os cenários comuns que exigirão conectividade de saída explícita incluem:

  • A ativação da VM do Windows exigirá que você tenha definido a conectividade de saída da instância da VM para o KMS (Serviço de Gerenciamento de Chave de Ativação do Windows). Consulte Solucionar problemas de ativação de VM do Windows para obter mais informações.
  • Acesso a contas de armazenamento ou Cofre de Chaves. A conectividade com os serviços do Azure também pode ser estabelecida por meio do Private Link.

Consulte Acesso de saída padrão no Azure para obter mais detalhes sobre como definir conexões de saída seguras.

Próximos passos

Para obter mais informações sobre redes virtuais do Azure, veja Descrição geral das redes virtuais do Azure.