Delen via


Migreren van binnenkomende NAT-regels versie 1 naar versie 2

Een binnenkomende NAT-regel wordt gebruikt om verkeer van de front-end van een load balancer door te sturen naar een of meer exemplaren in de back-endpool. Deze regels bieden een 1:1-toewijzing tussen het front-end-IP-adres en de back-endinstanties van de load balancer. Er zijn momenteel twee versies van inkomende NAT-regels, versie 1 en versie 2.

Belangrijk

Op 30 september 2027 worden binnenkomende NAT-regels v1 buiten gebruik gesteld. Als u momenteel inkomende NAT-regels v1 gebruikt, moet u een upgrade uitvoeren naar inkomende NAT-regels v2 vóór de buitengebruikstellingsdatum.

NAT-regel versie 1

Versie 1 is de verouderde methode voor het toewijzen van de front-endpoort van een Azure Load Balancer aan elk back-endexemplaren. Regels worden toegepast op de netwerkinterfacekaart (NIC) van het back-endexemplaren. Voor VMSS-exemplaren (Virtual Machine Scale Sets) van Azure worden binnenkomende NAT-regels automatisch gemaakt/verwijderd wanneer nieuwe exemplaren omhoog/omlaag worden geschaald. Voor VMSS-exemplaren wordt de Inbound NAT Pools eigenschap gebruikt om binnenkomende NAT-regels versie 1 te beheren.

NAT-regel versie 2

Versie 2 van binnenkomende NAT-regels bieden dezelfde functieset als versie 1, met extra voordelen.

  • Vereenvoudigde implementatie-ervaring en geoptimaliseerde updates.
    • Inkomende NAT-regels richten zich nu op de back-endpool van de load balancer en vereisen geen verwijzing meer op de NIC van de virtuele machine. Voorheen op versie 1 moesten zowel de load balancer als de NIC van de virtuele machine worden bijgewerkt wanneer de binnenkomende NAT-regel werd gewijzigd. Versie 2 vereist slechts één aanroep van de configuratie van de load balancer, wat resulteert in geoptimaliseerde updates.
  • Haal eenvoudig poorttoewijzing op tussen binnenkomende NAT-regels en back-endinstanties.
    • Met het verouderde aanbod moet de regel worden gecorreleerd met de NIC van de virtuele machine om de poorttoewijzing op te halen tussen een binnenkomende NAT-regel en een exemplaar van een virtuele machine. Versie 2 injecteert de poorttoewijzing tussen de regel en het back-endexemplaren rechtstreeks in de configuratie van de load balancer.

Hoe kan ik weten of ik versie 1 van binnenkomende NAT-regels gebruik?

De eenvoudigste manier om te bepalen of uw implementaties versie 1 van de functie gebruiken, is door de configuratie van de load balancer te controleren. Nat-regels van versie 1 hebben een typewaarde van virtuele Azure-machine met een gedefinieerde waarde voor de virtuele doelmachine.

Schermopname van de configuratie van NAT-regel versie 1 in Azure Portal.

Voor nat-regels van versie 2 is de waarde Type de back-endpool met een gedefinieerde waarde voor de back-endpool van het doel.

Schermopname van de configuratie van NAT-regel versie 2 in Azure Portal.

Als u programmatisch wilt bepalen of een implementatie gebruikmaakt van versie 1 van binnenkomende NAT-regels, controleert u de configuratie van de load balancer met behulp van de Azure CLI of PowerShell. Als een van beide eigenschappen backendIPConfiguration in de InboundNATRule configuratie is ingevuld, is de implementatie versie 1 van binnenkomende NAT-regels. Versie 2-regels hebben de backendAddressPool eigenschap in plaats van de backendIPConfiguration eigenschap.

Migreren van versie 1 naar versie 2

Voordat u gaat migreren, is het belangrijk om de volgende informatie te bekijken:

  • Migreren naar versie 2 van binnenkomende NAT-regels veroorzaakt downtime voor actief verkeer dat via de NAT-regels stroomt. Verkeer dat door load balancer-regels of uitgaande regels stroomt, wordt niet beïnvloed tijdens het migratieproces.
  • Plan het maximum aantal exemplaren in een back-endpool. Aangezien versie 2 is gericht op de back-endpool van de load balancer, moet een voldoende aantal poorten worden toegewezen voor de front-end van de NAT-regel.
  • Elk back-endexemplaren worden weergegeven op de poort die is geconfigureerd in de nieuwe NAT-regel.
  • Meerdere NAT-regels kunnen niet bestaan als ze een overlappend poortbereik hebben of dezelfde back-endpoort hebben.
  • NAT-regels en taakverdelingsregels kunnen niet dezelfde back-endpoort delen.

Handmatige migratie

De volgende drie stappen moeten worden uitgevoerd om te migreren naar versie 2 van binnenkomende NAT-regels

  1. Verwijder versie 1 van binnenkomende NAT-regels in de configuratie van de load balancer.
  2. Verwijder de verwijzing naar de NAT-regel op de configuratie van de virtuele machine of virtuele-machineschaalset.
    1. Alle instanties van virtuele-machineschaalsets moeten worden bijgewerkt.
  3. Implementeer versie 2 van inkomende NAT-regels.

Virtuele machine

De volgende stappen worden gebruikt voor het migreren van versie 1 naar versie 2 van binnenkomende NAT-regels voor een virtuele machine.


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

Schaalset voor virtuele machines

De volgende stappen worden gebruikt om te migreren van versie 1 naar versie 2 van binnenkomende NAT-regels voor een virtuele-machineschaalset. Hierbij wordt ervan uitgegaan dat de upgrademodus van de virtuele-machineschaalset is ingesteld op Handmatig. Zie Indelingsmodi voor virtuele-machineschaalsets in Azure voor meer informatie


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

Migratie met automatiseringsscript voor virtuele-machineschaalset

Het migratieproces hergebruikt bestaande back-endpools met lidmaatschap dat overeenkomt met de NAT-pools die moeten worden gemigreerd; Als er geen overeenkomende back-endpool wordt gevonden, wordt het script afgesloten (zonder wijzigingen aan te brengen). U kunt ook de -backendPoolReuseStrategy parameter gebruiken om altijd nieuwe back-endpools (NoReuse) te maken of een nieuwe back-endpool te maken als er geen overeenkomende pool bestaat (OptionalFirstMatch). Back-endpools en NAT-regelkoppelingen kunnen na de migratie worden bijgewerkt zodat deze overeenkomen met uw voorkeur.

Vereisten

Voordat u begint met het migratieproces, moet u ervoor zorgen dat aan de volgende vereisten wordt voldaan:

  • De SKU van de load balancer moet standaard zijn om de NAT-pools van een load balancer te migreren naar NAT-regels. Als u dit upgradeproces wilt automatiseren, raadpleegt u de stappen in Een basic load balancer upgraden naar Standard met PowerShell.
  • De virtuele-machineschaalsets die zijn gekoppeld aan de load balancer van het doel, moeten handmatig of automatisch upgradebeleid gebruiken. Het upgradebeleid 'Rolling' wordt niet ondersteund. Zie Upgradebeleid voor virtuele-machineschaalsets voor meer informatie.
  • Installeer de nieuwste versie van PowerShell.
  • Installeer de Azure PowerShell-modules.

AzureLoadBalancerNATPoolMigration De module installeren

Installeer met de volgende opdracht de AzureLoadBalancerNATPoolMigration module vanuit de PowerShell Gallery:

# Install the AzureLoadBalancerNATPoolMigration module

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

NAT-pools upgraden naar NAT-regels

Wanneer de module is geïnstalleerd, voert u een azureLoadBalancerNATPoolMigration upgrade uit van uw NAT-pools naar NAT-regels met de volgende stappen:

  1. Maak verbinding met Azure met Connect-AzAccount.

  2. Verzamel de namen van de doel load balancer voor de NAT-regelsupgrade en de naam van de resourcegroep .

  3. Voer de migratieopdracht uit door uw resourcenamen te vervangen door de tijdelijke aanduidingen van <loadBalancerResourceGroupName> en <loadBalancerName>:

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

Volgende stappen