Migración de las reglas NAT de entrada versión 1 a la versión 2
Una regla NAT de entrada se usa para reenviar el tráfico desde un front-end del equilibrador de carga a una o varias instancias del grupo de back-end. Estas reglas proporcionan una asignación 1:1 entre la dirección IP de front-end del equilibrador de carga y las instancias de back-end. Actualmente hay dos versiones de reglas NAT de entrada, versión 1 y versión 2.
Importante
El 30 de septiembre de 2027, se retirarán las reglas NAT de entrada v1. Si actualmente usa reglas NAT de entrada v1, asegúrese de actualizar a las reglas NAT de entrada v2 antes de la fecha de retirada.
Regla NAT versión 1
La versión 1 es el enfoque heredado para asignar el puerto front-end de Azure Load Balancer a cada instancia de back-end. Las reglas se aplican a la tarjeta de interfaz de red (NIC) de la instancia de back-end. En el caso de las instancias de Azure Virtual Machine Scale Sets (VMSS), las reglas NAT de entrada se crean o eliminan automáticamente a medida que se escalan o reducen verticalmente las nuevas instancias. En el caso de las instancias de VMSS, use la propiedad Inbound NAT Pool
para administrar las reglas NAT de entrada versión 1.
Regla NAT versión 2
La versión 2 de las reglas NAT de entrada proporcionan el mismo conjunto de características que la versión 1, con ventajas adicionales.
- Experiencia de implementación simplificada y actualizaciones optimizadas.
- Las reglas NAT de entrada ahora tienen como destino el grupo de back-end del equilibrador de carga y ya no requieren una referencia en la NIC de la máquina virtual. Anteriormente en la versión 1, tanto el equilibrador de carga como la NIC de la máquina virtual necesitaban actualizarse cada vez que se cambiaba la regla NAT de entrada. La versión 2 solo requiere una sola llamada en la configuración del equilibrador de carga, lo que da lugar a actualizaciones optimizadas.
- Recupere fácilmente la asignación de puertos entre las reglas NAT de entrada y las instancias de back-end.
- Con la oferta heredada, para recuperar la asignación de puertos entre una regla NAT de entrada y una instancia de máquina virtual, la regla tendría que estar correlacionada con la NIC de la máquina virtual. La versión 2 inserta la asignación de puertos entre la regla y la instancia de back-end directamente en la configuración del equilibrador de carga.
¿Cómo sé si uso la versión 1 de las reglas NAT de entrada?
La manera más fácil de identificar si las implementaciones usan la versión 1 de la característica es inspeccionando la configuración del equilibrador de carga. Si se rellena la propiedad InboundNATPool
o la propiedad backendIPConfiguration
dentro de la configuración InboundNATRule
, entonces la implantación es la versión 1 de las reglas NAT de entrada.
Migración de la versión 1 a la versión 2?
Antes de migrar, es importante revisar la siguiente información:
- La migración a la versión 2 de las reglas NAT de entrada provoca tiempo de inactividad en el tráfico activo que fluye a través de las reglas NAT. El tráfico que fluye a través de reglas de equilibrador de carga o reglas de salida no se ve afectado durante el proceso de migración.
- Planee el número máximo de instancias en un grupo de back-end. Dado que la versión 2 tiene como destino el grupo de back-end del equilibrador de carga, es necesario asignar un número suficiente de puertos para el front-end de la regla NAT.
- Cada instancia de back-end se expone en el puerto configurado en la nueva regla NAT.
- No pueden existir varias reglas NAT si tienen un intervalo de puertos superpuestos o tienen el mismo puerto back-end.
- Las reglas NAT y las reglas de equilibrio de carga no pueden compartir el mismo puerto de back-end.
Migración manual
Los tres pasos siguientes deben realizarse para migrar a la versión 2 de las reglas NAT de entrada
- Elimine la versión 1 de las reglas NAT de entrada en la configuración del equilibrador de carga.
- Quite la referencia a la regla NAT en la máquina virtual o la configuración del conjunto de escalado de máquinas virtuales.
- Todas las instancias del conjunto de escalado de máquinas virtuales deben actualizarse.
- Implemente la versión 2 de las reglas NAT de entrada.
Máquina virtual
Los pasos siguientes se usan para migrar de la versión 1 a la versión 2 de las reglas NAT de entrada para una máquina virtual.
az network lb inbound-nat-rule delete -g MyResourceGroup --lb-name MyLoadBalancer --name NATruleV1
az network nic ip-config inbound-nat-rule remove -g MyResourceGroup --nic-name MyNic -n MyIpConfig --inbound-nat-rule MyNatRule
az network lb inbound-nat-rule create -g MyResourceGroup --lb-name MyLoadBalancer -n MyNatRule --protocol Tcp --frontend-port-range-start 201 --frontend-port-range-end 500 --backend-port 22 --backend-address-pool MybackendPool
Conjunto de escalado de máquinas virtuales
Los pasos siguientes se usan para migrar de la versión 1 a la versión 2 de las reglas NAT de entrada para un conjunto de escalado de máquinas virtuales. Se supone que el modo de actualización del conjunto de escalado de máquinas virtuales está establecido en Manual. Para obtener más información, consulte Modos de orquestación para Virtual Machine Scale Sets de Azure
az network lb inbound-nat-pool delete -g MyResourceGroup --lb-name MyLoadBalancer -n MyNatPool
az vmss update -g MyResourceGroup -n MyVMScaleSet --remove virtualMachineProfile.networkProfile.networkInterfaceConfigurations[0].ipConfigurations[0].loadBalancerInboundNatPools
az vmss update-instances --instance-ids '*' --resource-group MyResourceGroup --name MyVMScaleSet
az network lb inbound-nat-rule create -g MyResourceGroup --lb-name MyLoadBalancer -n MyNatRule --protocol Tcp --frontend-port-range-start 201 --frontend-port-range-end 500 --backend-port 22 --backend-address-pool MybackendPool
Migración con script de automatización para el conjunto de escalado de máquinas virtuales
El proceso de migración reutilizará los grupos de back-end existentes con los miembros que coincidan con los grupos NAT que se van a migrar; si no se encuentra ningún grupo de back-end que coincida, el script se cerrará (sin realizar cambios). Como alternativa, use el parámetro -backendPoolReuseStrategy
para crear siempre nuevos grupos de back-end (NoReuse
) o cree un nuevo grupo de back-end si no existe uno que coincida (OptionalFirstMatch
). Después de la migración, los grupos de back-end y las asociaciones de reglas NAT se pueden actualizar para que coincidan con sus preferencias.
Requisitos previos
Antes de comenzar el proceso de migración, asegúrese de que se cumplen los siguientes requisitos previos:
- La SKU del equilibrador de carga debe ser Estándar para migrar los Pools NAT de un equilibrador de carga a Reglas NAT. Para automatizar este proceso de actualización, consulte los pasos proporcionados en Actualización de un equilibrador de carga Básico a Estándar con PowerShell.
- Los conjuntos de escalado de máquinas virtuales asociados con el equilibrador de carga de destino deberán usar una directiva de actualización "Manual" o "Automática", y no se admite la directiva de actualización "Gradual". Para obtener más información, consulte Directivas de actualización de los conjuntos de escalado de máquinas virtuales.
- Instale la versión más reciente de PowerShell.
- Instalación de los módulos de Azure PowerShell.
Instalación del módulo AzureLoadBalancerNATPoolMigration
Use uno de los siguientes comandos para instalar el módulo AzureLoadBalancerNATPoolMigration
desde la Galería de PowerShell:
# Install the AzureLoadBalancerNATPoolMigration module
Install-Module -Name AzureLoadBalancerNATPoolMigration -Scope CurrentUser -Repository PSGallery -Force
Actualización de grupos NAT a reglas NAT
Con el azureLoadBalancerNATPoolMigration
módulo instalado, actualice los grupos nat a reglas NAT con los pasos siguientes:
Conéctese a Azure con
Connect-AzAccount
.Recopile los nombres del equilibrador de carga de destino para la actualización de las reglas NAT y su nombre del grupo de recursos.
Ejecute el comando de migración con los nombres de recursos reemplazando los marcadores de posición de
<loadBalancerResourceGroupName>
y<loadBalancerName>
:# Run the migration command Start-AzNATPoolMigration -ResourceGroupName <loadBalancerResourceGroupName> -LoadBalancerName <loadBalancerName>
Pasos siguientes
- Obtenga más información sobre la administración de reglas NAT de entrada
- Obtenga más información sobre Reglas NAT y grupos NAT de Azure Load Balancer