Миграция с правил NAT для входящих подключений версии 1 до версии 2

Правило NAT для входящего трафика используется для пересылки трафика из интерфейсной части подсистемы балансировки нагрузки на один или несколько экземпляров в серверном пуле. Эти правила предоставляют сопоставление между интерфейсным IP-адресом подсистемы балансировки нагрузки и экземплярами серверной части. В настоящее время существует две версии правил NAT для входящего трафика, версия 1 и версия 2.

Правило NAT версии 1

Версия 1 — это устаревший подход для назначения интерфейсного порта Azure Load Balancer каждому внутреннему экземпляру. Правила применяются к сетевой карте сетевого интерфейса серверного экземпляра. Для экземпляров Azure Масштабируемые наборы виртуальных машин правила NAT для входящего трафика автоматически создаются и удаляются по мере увеличения или уменьшения масштаба новых экземпляров.

Правило NAT версии 2

Версии 2 правил NAT для входящего трафика предоставляют тот же набор функций, что и версия 1, с дополнительными преимуществами.

  • Упрощенное развертывание и оптимизированные обновления.
    • Правила NAT для входящих подключений теперь предназначены для внутреннего пула подсистемы балансировки нагрузки и больше не требуют ссылки на сетевой адаптер виртуальной машины. Ранее в версии 1 подсистема балансировки нагрузки и сетевой адаптер виртуальной машины должны обновляться всякий раз, когда было изменено правило NAT для входящего трафика. Для версии 2 требуется только один вызов конфигурации подсистемы балансировки нагрузки, что приводит к оптимизированным обновлениям.
  • Легко извлеките сопоставление портов между правилами NAT для входящих подключений и внутренними экземплярами.
    • При использовании устаревшего предложения для получения сопоставления портов между правилом NAT для входящего трафика и экземпляром виртуальной машины необходимо сопоставить правило с сетевой картой виртуальной машины. Версия 2 внедряет сопоставление портов между правилом и серверным экземпляром непосредственно в конфигурацию подсистемы балансировки нагрузки.

Разделы справки знать, используется ли я версию 1 правил NAT для входящего трафика?

Самый простой способ определить, используется ли развертывание версии 1 функции, путем проверки конфигурации подсистемы балансировки нагрузки. InboundNATPool Если свойство или backendIPConfiguration свойство в InboundNATRule конфигурации заполнено, развертывание — это версия 1 правил NAT для входящих подключений.

Как перейти с версии 1 на версию 2?

Прежде чем перенести, важно просмотреть следующие сведения:

  • Переход на версию 2 правил NAT для входящего трафика приводит к простою активного трафика, который проходит через правила NAT. Трафик, проходящий через правила подсистемы балансировки нагрузки или правила исходящего трафика, не влияют во время процесса миграции.
  • Запланируйте максимальное количество экземпляров в серверном пуле. Так как версия 2 предназначена для серверного пула подсистемы балансировки нагрузки, необходимо выделить достаточное количество портов для внешнего интерфейса правила NAT.
  • Каждый серверный экземпляр предоставляется через порт, настроенный в новом правиле NAT.
  • Несколько правил NAT не могут существовать, если они имеют перекрывающийся диапазон портов или имеют один и тот же внутренний порт.
  • Правила NAT и правила балансировки нагрузки не могут совместно использовать один и тот же внутренний порт.

Миграция вручную

Для миграции на 2 правил NAT для входящего трафика необходимо выполнить следующие три шага.

  1. Удалите версию 1 правил NAT для входящего трафика в конфигурации подсистемы балансировки нагрузки.
  2. Удалите ссылку на правило NAT в конфигурации масштабируемого набора виртуальных машин или виртуальной машины.
    1. Необходимо обновить все экземпляры масштабируемого набора виртуальных машин.
  3. Разверните версию 2 правил NAT для входящего трафика.

Виртуальная машина

Следующие шаги используются для миграции с версии 1 на 2 правил NAT для входящего трафика для виртуальной машины.


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 

Масштабируемый набор виртуальных машин

Следующие шаги используются для миграции с версии 1 до версии 2 правил NAT для входящего трафика для масштабируемого набора виртуальных машин. Предполагается, что для режима обновления масштабируемого набора виртуальных машин задано значение "Вручную". Дополнительные сведения см. в разделе "Режимы оркестрации" для Масштабируемые наборы виртуальных машин в 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 

Миграция с помощью скрипта автоматизации для масштабируемого набора виртуальных машин

Процесс миграции будет повторно использовать существующие серверные пулы с членством в соответствии с пулами NAT, которые будут перенесены; Если не найден соответствующий серверный пул, скрипт завершит работу (без внесения изменений). Кроме того, используйте -backendPoolReuseStrategy параметр, чтобы всегда создавать серверные пулы (NoReuse) или создавать новый внутренний пул, если соответствующий пул не существует (OptionalFirstMatch). Серверные пулы и связи правил NAT можно обновить после миграции, чтобы соответствовать вашим предпочтениям.

Необходимые компоненты

Перед началом процесса миграции убедитесь, что выполнены следующие предварительные требования:

AzureLoadBalancerNATPoolMigration Установка модуля

С помощью следующей AzureLoadBalancerNATPoolMigration команды установите модуль из коллекция PowerShell:

# Install the AzureLoadBalancerNATPoolMigration module

Install-Module -Name AzureLoadBalancerNATPoolMigration -Scope CurrentUser -Repository PSGallery -Force 

Обновление пулов NAT до правил NAT

azureLoadBalancerNATPoolMigration После установки модуля обновите пулы NAT до правил NAT, выполнив следующие действия.

  1. Подключитесь к Azure с Connect-AzAccountпомощью .

  2. Соберите имена целевой подсистемы балансировки нагрузки для обновления правил NAT и его имени группы ресурсов.

  3. Выполните команду миграции с именами ресурсов, заменив заполнители <loadBalancerResourceGroupName> и <loadBalancerName>:

    # Run the migration command 
    
    Start-AzNATPoolMigration -ResourceGroupName <loadBalancerResourceGroupName> -LoadBalancerName <loadBalancerName>
    
    

Следующие шаги