Redes para conjuntos de escalado de máquinas virtuales de Azure

Al implementar el conjunto de escalado de máquinas virtuales de Azure a través del portal, algunas propiedades de red se establecen de forma predeterminada, por ejemplo, una instancia de Azure Load Balancer mediante reglas NAT de entrada. En este artículo se describe cómo utilizar algunas de las características más avanzadas de redes que puede configurar con conjuntos de escalado.

Puede configurar todas las características que se tratan en este artículo usando plantillas de Azure Resource Manager. También se incluyen ejemplos de la CLI de Azure y PowerShell para las características seleccionadas.

Redes aceleradas

Azure Accelerated Networking mejora el rendimiento de la red al permitir la virtualización de E/S de raíz única (SR-IOV) en una máquina virtual. Para obtener más información sobre el uso de redes acelerada, consulte los temas sobre redes aceleradas para máquinas virtuales Windows o Linux. Para usar las redes aceleradas con conjuntos de escalado, establezca enableAcceleratedNetworking en true en los valores de networkInterfaceConfigurations de su conjunto de escalado. Por ejemplo:

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

Conjuntos de escalado de máquinas virtuales de Azure con Azure Load Balancer

Consulte Azure Load Balancer y Virtual Machine Scale Sets para más información sobre cómo configurar Standard Load Balancer con Virtual Machine Scale Sets según su escenario.

Agregar un conjunto de escalado de máquinas virtuales a una instancia de Application Gateway

Para agregar un conjunto de escalado al grupo de back-end de Application Gateway, haga referencia al grupo de back-end de Application Gateway en el perfil de red del conjunto de escalado. Esto se puede hacer al crear el conjunto de escalado (consulte plantilla de ARM a continuación) o en un conjunto de escalado existente.

Agregar Virtual Machine Scale Sets de orquestación uniforme a Application Gateway

Al agregar Virtual Machine Scale Sets uniforme a un grupo de back-end de Application Gateway, el proceso será diferente para los conjuntos de escalado nuevos que para los existentes:

  • Para los conjuntos de escalado nuevos, haga referencia al identificador del grupo de back-end de Application Gateway en el perfil de red del modelo del conjunto de escalado, en una o varias configuraciones de IP de interfaz de red. Cuando se implementen, las instancias agregadas al conjunto de escalado se colocarán en el grupo de back-end de Application Gateway.
  • En el caso de los conjuntos de escalado existentes, agregue primero el identificador del grupo de back-end de Application Gateway en el perfil de red del modelo del conjunto de escalado y, a continuación, aplique el modelo a las instancias existentes mediante una actualización. Si la directiva de actualización del conjunto de escalado es Automatic o Rolling, las instancias se actualizarán automáticamente. Si es Manual, deberá actualizar las instancias manualmente.
  1. Cree un grupo de Application Gateway y back-end en la misma región que el conjunto de escalado, si aún no tiene uno
  2. Vaya al conjunto de escalado de máquinas virtuales en el portal
  3. En Configuración, abra el panel Redes
  4. En el panel Redes, seleccione la pestaña Equilibrio de carga y, a continuación, haga clic en Agregar equilibrio de carga
  5. Seleccione Application Gateway en la lista desplegable Opciones de equilibrio de carga y elija una Application Gateway existente
  6. Seleccione el grupo de back-end de destino y haga clic en Guardar
  7. Si la directiva de actualización del conjunto de escalado es "Manual", vaya a Configuración>panel de Instancias para seleccionar y actualizar cada una de las instancias

Agregar Virtual Machine Scale Sets de orquestación flexible a Application Gateway

Agregar un conjunto de escalado flexible a una instancia de Application Gateway sigue el mismo proceso que agregar máquinas virtuales independientes a un grupo de back-end de Application Gateway: se actualiza la configuración IP de la interfaz de red de la máquina virtual para formar parte del grupo de back-end. Esto se puede hacer a través de la configuración de Application Gateway o mediante la configuración de la interfaz de red de la máquina virtual.

Nota:

Tenga en cuenta que la puerta de enlace de aplicaciones debe estar en la misma red virtual que el conjunto de escalado, pero en una subred diferente a la de este.

Valores de DNS configurables

De forma predeterminada, los conjuntos de escalado adoptan los valores de DNS específicos de la red virtual y la subred en las que se crearon. No obstante, puede configurar los valores de DNS para un conjunto de escalado directamente.

Creación de un conjunto de escalado con servidores DNS configurables

Para crear un conjunto de escalado con una configuración de DNS personalizada mediante la CLI de Azure, agregue el argumento --dns-servers al comando vmss create, seguido por las direcciones ip del servidor separadas por espacio. Por ejemplo:

--dns-servers 10.0.0.6 10.0.0.5

Para configurar servidores DNS personalizados en una plantilla de Azure, agregue una propiedad dnsSettings a la sección de networkInterfaceConfigurations del conjunto de escalado. Por ejemplo:

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

Creación de un conjunto de escalado con nombres de dominio de máquinas virtuales configurables

Para crear un conjunto de escalado con un nombre DNS personalizado para máquinas virtuales mediante la CLI, agregue el argumento --vm-domain-name al comando virtual machine scale set create, seguido por una cadena que representa el nombre de dominio.

Para establecer el nombre de dominio en una plantilla de Azure, agregue una propiedad dnsSettings a la sección de networkInterfaceConfigurations del conjunto de escalado. Por ejemplo:

"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')]"
              }
            }
          }
        }
      }
    ]
    }
}

El resultado, para un nombre DNS de máquina virtual individual, tendría la forma siguiente:

<vm><vmindex>.<specifiedVmssDomainNameLabel>

Dirección IPv4 pública por máquina virtual

En general, las máquinas virtuales del conjunto de escalado de Azure no requieren direcciones IP públicas propias. En la mayoría de los escenarios, resulta más económico y seguro asociar una dirección IP pública a un equilibrador de carga o a una máquina virtual individual (también conocida como jumpbox), que luego enruta las conexiones entrantes a máquinas virtuales del conjunto de escalado según sea necesario (por ejemplo, a través de reglas NAT de entrada).

Sin embargo, algunos escenarios requieren que las máquinas virtuales del conjunto de escalado tengan sus propias direcciones IP públicas. Un ejemplo son los juegos, en los que se necesita una consola para tener una conexión directa a una máquina virtual en la nube, que esté realizando el procesamiento físico de los juegos. Otro ejemplo es cuando las máquinas virtuales necesitan realizar conexiones externas entre sí a través de regiones en una base de datos distribuida.

Creación de un conjunto de escalado con una dirección IP pública por máquina virtual

Para crear un conjunto de escalado que asigne una dirección IP pública a cada máquina virtual con la CLI, agregue el parámetro --public-ip-per-vm al comando vmss create.

Para crear un conjunto de escalado mediante una plantilla de Azure, asegúrese de que la versión de API del recurso Microsoft.Compute/virtualMachineScaleSets sea al menos 2017-03-30 y agregue una propiedad JSON publicIpAddressConfiguration a la sección ipConfigurations del conjunto de escalado. Por ejemplo:

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

Tenga en cuenta que cuando los conjuntos de escalado de máquinas virtuales con IP públicas por instancia se crean con un equilibrador de carga delante, la SKU de las IP de la instancia viene determinada por la SKU de Load Balancer (es decir, Básico o Estándar). Si el conjunto de escalado de máquinas virtuales se crea sin un equilibrador de carga, la SKU de las direcciones IP de instancia se puede establecer directamente mediante la sección SKU de la plantilla, como se mostró anteriormente.

Plantilla de ejemplo con un equilibrador de carga básico: vmss-public-ip-linux.

Como alternativa, se puede usar un prefijo de IP pública (un bloque contiguo de direcciones IP públicas de SKU estándar) para generar direcciones IP en el nivel de instancia de un conjunto de escalado de máquinas virtuales. Las propiedades zonales del prefijo se pasarán a las IP de instancia, aunque no aparecerán en la salida.

Plantilla de ejemplo con un prefijo de IP pública: vmms-with-public-ip-prefix

Consulta de las direcciones IP públicas de las máquinas virtuales en un conjunto de escalado

Para enumerar las direcciones IP públicas asignadas para escalar máquinas virtuales del conjunto mediante la CLI, use el comando az vmss list-instance-public-ips.

Para mostrar las direcciones IP públicas del conjunto de escalado con PowerShell, use el comando Get-AzPublicIpAddress. Por ejemplo:

Get-AzPublicIpAddress -ResourceGroupName myrg -VirtualMachineScaleSetName myvmss

También puede consultar las direcciones IP públicas haciendo referencia directamente al identificador de recurso de la configuración de la dirección IP pública. Por ejemplo:

Get-AzPublicIpAddress -ResourceGroupName myrg -Name myvmsspip

También puede mostrar las direcciones IP públicas asignadas a las máquinas virtuales del conjunto de escalado mediante una consulta a Azure Resource Explorer o a la API REST de Azure con la versión 2017-03-30 o superior.

Para realizar la consulta en Azure Resource Explorer:

  1. Abra Azure Resource Explorer en una ventana del explorador.
  2. Para expandir las suscripciones del lado izquierdo, haga clic en el signo + situado junto a estas. Si solo tiene un elemento en suscripciones, puede que ya esté expandido.
  3. Expanda la suscripción.
  4. Expanda el grupo de recursos.
  5. Expanda los proveedores.
  6. Expanda Microsoft.Compute.
  7. Expanda virtualMachineScaleSets.
  8. Expanda el conjunto de escalado.
  9. Haga clic en publicipaddresses.

Para consultar la API REST de 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

Ejemplo de salida de Azure Resource Explorer y API REST de 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"
        }
      }
    }

Varias direcciones IP por NIC

Cada NIC asociada a una VM en un conjunto de escalado puede tener una o varias configuraciones de IP asociadas con ella. Se asigna a cada configuración una dirección IP privada. Cada configuración también puede tener un recurso de dirección IP pública asociado con ella. Para saber cuántas direcciones IP se pueden asignar a una NIC y cuántas direcciones IP públicas se pueden usar en una suscripción de Azure, consulte los límites de Azure.

Varias NIC por máquina virtual

Puede tener hasta 8 NIC por máquina virtual, según el tamaño de la máquina. El número máximo de NIC por máquina está disponible en el artículo sobre Tamaños de las máquinas virtuales. Todas las NIC conectadas a una instancia de máquina virtual deben conectarse a la misma red virtual. Las NIC se pueden conectar a distintas subredes, pero todas las subredes deben formar parte de la misma red virtual.

El ejemplo siguiente es un perfil de red del conjunto de escalado que muestra varias entradas NIC y varias direcciones IP públicas 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 y ASG por conjunto de escalado

Los grupos de seguridad de red le permiten filtrar el tráfico hacia los recursos de una red virtual de Azure y desde esta mediante reglas de seguridad. Los grupos de seguridad de la aplicación le permiten administrar la seguridad de red de los recursos de Azure y agruparlos como una extensión de la estructura de la aplicación.

Los grupos de seguridad de red se pueden aplicar directamente a un conjunto de escalado agregando una referencia a la sección de configuración de la interfaz de red de las propiedades de máquinas virtuales del conjunto de escalado.

Los grupos de seguridad de red también se pueden especificar directamente para un conjunto de escalado agregando una referencia a la sección de configuración IP de la interfaz de red de las propiedades de máquinas virtuales del conjunto de escalado.

Por ejemplo:

"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 comprobar que el grupo de seguridad de red está asociado con el conjunto de escalado, use el comando az vmss show. El siguiente ejemplo usa --query para filtrar los resultados y que solo aparezca la sección pertinente de la salida.

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

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

Para comprobar que el grupo de seguridad de la aplicación está asociado con el conjunto de escalado, use el comando az vmss show. El siguiente ejemplo usa --query para filtrar los resultados y que solo aparezca la sección pertinente de la salida.

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

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

Realización de actualizaciones de red en instancias específicas

Puede realizar actualizaciones de red en instancias específicas del conjunto de escalado de máquinas virtuales.

Puede PUT en la instancia para actualizar la configuración de red. Se puede usar para realizar acciones como agregar o quitar tarjetas de interfaz de red (NIC) o quitar una instancia de un grupo de back-end.

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

En el ejemplo siguiente se muestra cómo agregar una segunda configuración de IP a la NIC.

  1. GET: detalles de una instancia específica del conjunto de escalado de máquinas virtuales.

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

    Lo siguiente se ha simplificado para mostrar solo los parámetros de red para este ejemplo.

    {
      ...
      "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 en la instancia de, actualizando para agregar la configuración de IP adicional. Esto es similar para agregar networkInterfaceConfiguration adicionales.

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

    Lo siguiente se ha simplificado para mostrar solo los parámetros de red para este ejemplo.

      {
      ...
      "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"
                    }
                  }
                ]
              }
            }
          ]
        },
        ...
      }
    }
    

Conectividad de salida de red explícita para conjuntos de escalado flexibles

Para mejorar la seguridad de red predeterminada, los conjuntos de escalado de máquinas virtuales con orquestación flexible exigen que las instancias creadas de manera implícita por medio del perfil de escalado automático tengan conectividad de salida definida de forma explícita gracias a alguno de los métodos siguientes:

  • En la mayoría de los escenarios, se recomienda NAT Gateway adjunto a la subred.
  • En escenarios con requisitos de seguridad elevados, o si se usa Azure Firewall o Network Virtual Appliance (NVA), puede especificar una ruta definida por el usuario personalizada como próximo salto a través del firewall.
  • Las instancias están en el grupo de back-end de una instancia de Azure Load Balancer de SKU estándar.
  • Adjunte una dirección IP pública a la interfaz de red de la instancia.

Con máquinas virtuales de instancia única y conjuntos de escalado de máquinas virtuales con orquestación uniforme, la conectividad de salida se proporciona automáticamente.

Entre los escenarios comunes que requieren conectividad de salida explícita se incluyen:

  • La activación de una máquina virtual Windows requiere que se haya definido la conectividad de salida desde la instancia de máquina virtual al Servicio de administración de claves (KMS) de activación de Windows. Vea Solución de problemas de activación de máquinas virtuales Windows para obtener más información.
  • Acceda a cuentas de almacenamiento o Key Vault. La conectividad con los servicios de Azure también se puede establecer por medio de Private Link.

Vea Acceso de salida predeterminado en Azure para obtener más detalles sobre cómo definir conexiones de salida seguras.

Pasos siguientes

Para más información acerca de redes virtuales, consulte la Introducción a Azure Virtual Network.