Een internetgerichte load balancer-oplossing implementeren met IPv6 met behulp van een sjabloon

Notitie

In dit artikel wordt een inleidende IPv6-functie beschreven waarmee Basic Load Balancers zowel IPv4- als IPv6-connectiviteit kunnen bieden. Uitgebreide IPv6-connectiviteit is nu beschikbaar met IPv6 voor Azure VNETs die IPv6-connectiviteit integreert met uw virtuele netwerken en belangrijke functies bevat, zoals IPv6-regels voor netwerkbeveiligingsgroepen , door de gebruiker gedefinieerde IPv6-routering, IPv6 Basic- en Standard-taakverdeling en meer. IPv6 voor Azure VNET's is de aanbevolen standaard voor IPv6-toepassingen in Azure. IPv6 voor Azure VNET PowerShell-implementatie bekijken

Azure Load Balancer is een Layer-4 (TCP, UDP) load balancer. De load balancer biedt hoge beschikbaarheid bij het verdelen van inkomend verkeer over gezonde service-exemplaren in cloudservices of virtuele machines in een load balancer-set. Azure Load Balancer kan deze services ook toepassen op meerdere poorten, meerdere IP-adressen of allebei.

Voorbeeldimplementatiescenario

In het volgende diagram ziet u de taakverdelingsoplossing die wordt geïmplementeerd met behulp van de voorbeeldsjabloon die in dit artikel wordt beschreven.

Diagram shows an example scenario used in this article, including a workstation client connected to an Azure Load Balancer over the Internet, connected in turn to two virtual machines.

In dit scenario maakt u de volgende Azure-resources:

  • een virtuele netwerkinterface voor elke VM met zowel IPv4- als IPv6-adressen toegewezen
  • een internetgerichte load balancer met een IPv4 en een openbaar IPv6-ip-adres
  • twee taakverdelingsregels om de openbare VIP's toe te wijzen aan de privé-eindpunten
  • een beschikbaarheidsset die de twee VM's bevat
  • twee virtuele machines (VM's)

De sjabloon implementeren met behulp van Azure Portal

In dit artikel wordt verwezen naar een sjabloon die is gepubliceerd in de galerie Azure-snelstartsjablonen . U kunt de sjabloon downloaden uit de galerie of de implementatie in Azure rechtstreeks vanuit de galerie starten. In dit artikel wordt ervan uitgegaan dat u de sjabloon naar uw lokale computer hebt gedownload.

  1. Open Azure Portal en meld u aan met een account met machtigingen voor het maken van VM's en netwerkresources binnen een Azure-abonnement. Tenzij u bestaande resources gebruikt, heeft het account ook toestemming nodig om een resourcegroep en een opslagaccount te maken.

  2. Selecteer +Nieuw in het menu en typ vervolgens 'sjabloon' in het zoekvak. Selecteer Sjabloonimplementatie in de zoekresultaten.

    Screenshot shows the Azure portal with New and Template deployment selected.

  3. Selecteer op de blade Alles de optie Sjabloonimplementatie.

    Screenshot shows Template deployment in the Marketplace.

  4. Selecteer 'Maken'.

    Screenshot shows the description of Template deployment in the Marketplace.

  5. Selecteer Sjabloon bewerken. Verwijder de bestaande inhoud en kopieer/plak de volledige inhoud van het sjabloonbestand (om het begin en einde { }op te nemen) en selecteer vervolgens Opslaan.

    Notitie

    Als u Microsoft Internet Explorer gebruikt, ontvangt u wanneer u plakt een dialoogvenster waarin u wordt gevraagd om toegang tot het Windows-klembord toe te staan. Klik op Toegang toestaan.

    Screenshot shows the firest step of a Custom deployment, which is Edit template.

  6. Selecteer Parameters bewerken. Geef op de blade Parameters de waarden op volgens de richtlijnen in de sectie Sjabloonparameters en selecteer vervolgens Opslaan om de blade Parameters te sluiten. Selecteer op de blade Aangepaste implementatie uw abonnement, een bestaande resourcegroep of maak er een. Als u een resourcegroep maakt, selecteert u een locatie voor de resourcegroep. Selecteer vervolgens Juridische voorwaarden en selecteer Vervolgens Kopen voor de juridische voorwaarden. Azure begint met het implementeren van de resources. Het duurt enkele minuten om alle resources te implementeren.

    Screenshot shows the steps involved in the Custom deployment, starting with entering template parameter values.

    Zie de sectie Sjabloonparameters en variabelen verderop in dit artikel voor meer informatie over deze parameters.

  7. Als u de resources wilt zien die door de sjabloon zijn gemaakt, selecteert u Bladeren, schuift u omlaag in de lijst totdat u 'Resourcegroepen' ziet en selecteert u deze.

    Screenshot shows the Azure portal with Browse and Resource groups selected.

  8. Selecteer op de blade Resourcegroepen de naam van de resourcegroep die u hebt opgegeven in stap 6. U ziet een lijst met alle resources die zijn geïmplementeerd. Als alles goed is gegaan, wordt 'Geslaagd' onder 'Laatste implementatie' weergegeven. Zo niet, zorg er dan voor dat het account dat u gebruikt, machtigingen heeft om de benodigde resources te maken.

    Screenshot shows the status of the last deployment for a resource group, in this example, Succeeded.

    Notitie

    Als u direct na het voltooien van stap 6 door uw resourcegroepen bladert, wordt in 'Laatste implementatie' de status 'Implementeren' weergegeven terwijl de resources worden geïmplementeerd.

  9. Selecteer 'myIPv6PublicIP' in de lijst met resources. U ziet dat het een IPv6-adres heeft onder IP-adres en dat de DNS-naam de waarde is die u hebt opgegeven voor de parameter dnsNameforIPv6LbIP in stap 6. Deze resource is het openbare IPv6-adres en de hostnaam die toegankelijk is voor internetclients.

    Screenshot shows the IPv6 public address.

Connectiviteit valideren

Wanneer de sjabloon is geïmplementeerd, kunt u de connectiviteit valideren door de volgende taken uit te voeren:

  1. Meld u aan bij Azure Portal en maak verbinding met elk van de VM's die zijn gemaakt door de sjabloonimplementatie. Als u een Windows Server-VM hebt geïmplementeerd, voert u ipconfig /all uit vanaf een opdrachtprompt. U ziet dat de VM's zowel IPv4- als IPv6-adressen hebben. Als u Virtuele Linux-machines hebt geïmplementeerd, moet u het Linux-besturingssysteem configureren voor het ontvangen van dynamische IPv6-adressen met behulp van de instructies voor uw Linux-distributie.
  2. Start vanaf een met internet verbonden IPv6-client een verbinding met het openbare IPv6-adres van de load balancer. U kunt een webserver zoals Microsoft Internet Information Services (IIS) installeren op elk van de VM's om te controleren of de load balancer de taakverdeling tussen de twee VM's is. De standaardwebpagina op elke server kan de tekst 'Server0' of 'Server1' bevatten om deze uniek te identificeren. Open vervolgens een internetbrowser op een met IPv6 verbonden client en blader naar de hostnaam die u hebt opgegeven voor de parameter dnsNameforIPv6LbIP van de load balancer om end-to-end IPv6-connectiviteit met elke VM te bevestigen. Als u alleen de webpagina van slechts één server ziet, moet u mogelijk de browsercache wissen. Open meerdere privénavigatiesessies. U ziet nu een antwoord van elke server.
  3. Start vanaf een met internet verbonden IPv4-client een verbinding met het openbare IPv4-adres van de load balancer. Om te bevestigen dat de load balancer de taakverdeling van de twee VM's is, kunt u testen met IIS, zoals beschreven in stap 2.
  4. Start vanaf elke VIRTUELE machine een uitgaande verbinding met een IPv6- of IPv4-verbonden internetapparaat. In beide gevallen is het bron-IP-adres dat wordt gezien door het doelapparaat het openbare IPv4- of IPv6-adres van de load balancer.

Notitie

Als u connectiviteit wilt testen voor zowel een IPv4- als een IPv6-front-end van een Load Balancer, kan een ICMP-ping worden verzonden naar de front-end van de Load Balancer. De IP-adressen die in het diagram worden weergegeven, zijn voorbeelden van waarden die u mogelijk ziet. Omdat de IPv6-adressen dynamisch worden toegewezen, verschillen de adressen die u ontvangt en kunnen ze per regio verschillen. Het is ook gebruikelijk dat het openbare IPv6-adres op de load balancer begint met een ander voorvoegsel dan de privé-IPv6-adressen in de back-endpool.

Sjabloonparameters en -variabelen

Een Azure Resource Manager-sjabloon bevat meerdere variabelen en parameters die u kunt aanpassen aan uw behoeften. Variabelen worden gebruikt voor vaste waarden die u niet wilt wijzigen door een gebruiker. Parameters worden gebruikt voor waarden die een gebruiker moet opgeven bij het implementeren van de sjabloon. De voorbeeldsjabloon is geconfigureerd voor het scenario dat in dit artikel wordt beschreven. U kunt dit aanpassen aan de behoeften van uw omgeving.

De voorbeeldsjabloon die in dit artikel wordt gebruikt, bevat de volgende variabelen en parameters:

Parameter/variabele Opmerkingen
adminUsername Geef de naam op van het beheerdersaccount waarmee u zich aanmeldt bij de virtuele machines.
adminPassword Geef het wachtwoord op voor het beheerdersaccount waarmee u zich aanmeldt bij de virtuele machines.
dnsNameforIPv4LbIP Geef de DNS-hostnaam op die u wilt toewijzen als de openbare naam van de load balancer. Deze naam wordt omgezet in het openbare IPv4-adres van de load balancer. De naam moet kleine letters bevatten en overeenkomen met de regex: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$.
dnsNameforIPv6LbIP Geef de DNS-hostnaam op die u wilt toewijzen als de openbare naam van de load balancer. Deze naam wordt omgezet in het openbare IPv6-adres van de load balancer. De naam moet kleine letters bevatten en overeenkomen met de regex: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$. Dit kan dezelfde naam hebben als het IPv4-adres. Wanneer een client een DNS-query voor deze naam verzendt, retourneert Azure zowel de A- als AAAA-records wanneer de naam wordt gedeeld.
vmNamePrefix Geef het voorvoegsel van de VM-naam op. De sjabloon voegt een getal (0, 1, enzovoort) toe aan de naam wanneer de virtuele machines worden gemaakt.
nicNamePrefix Geef het voorvoegsel voor de netwerkinterfacenaam op. De sjabloon voegt een getal (0, 1, enzovoort) toe aan de naam wanneer de netwerkinterfaces worden gemaakt.
storageAccountName Voer de naam van een bestaand opslagaccount in of geef de naam op van een nieuw account dat door de sjabloon moet worden gemaakt.
availabilitySetName Voer vervolgens de naam in van de beschikbaarheidsset die moet worden gebruikt met de VM's
addressPrefix Het adresvoorvoegsel dat wordt gebruikt om het adresbereik van het virtuele netwerk te definiëren
subnetName De naam van het subnet dat is gemaakt voor het VNet
subnetPrefix Het adresvoorvoegsel dat wordt gebruikt om het adresbereik van het subnet te definiëren
vnetName Geef de naam op voor het VNet dat door de VM's wordt gebruikt.
ipv4PrivateIPAddressType De toewijzingsmethode die wordt gebruikt voor het privé-IP-adres (statisch of dynamisch)
ipv6PrivateIPAddressType De toewijzingsmethode die wordt gebruikt voor het privé-IP-adres (dynamisch). IPv6 ondersteunt alleen dynamische toewijzing.
numberOfInstances Het aantal exemplaren met gelijke taakverdeling dat door de sjabloon is geïmplementeerd
ipv4PublicIPAddressName Geef de DNS-naam op die u wilt gebruiken om te communiceren met het openbare IPv4-adres van de load balancer.
ipv4PublicIPAddressType De toewijzingsmethode die wordt gebruikt voor het openbare IP-adres (statisch of dynamisch)
Ipv6PublicIPAddressName Geef de DNS-naam op die u wilt gebruiken om te communiceren met het openbare IPv6-adres van de load balancer.
ipv6PublicIPAddressType De toewijzingsmethode die wordt gebruikt voor het openbare IP-adres (dynamisch). IPv6 ondersteunt alleen dynamische toewijzing.
lbName Geef de naam van de load balancer op. Deze naam wordt weergegeven in de portal of wordt gebruikt wanneer u ernaar verwijst met een CLI- of PowerShell-opdracht.

De resterende variabelen in de sjabloon bevatten afgeleide waarden die worden toegewezen wanneer Azure de resources maakt. Wijzig deze variabelen niet.

Volgende stappen

Zie Microsoft.Network/loadBalancers voor de JSON-syntaxis en eigenschappen van een load balancer in een sjabloon.