Schnellstart: Erstellen eines internen Load Balancers zum Lastenausgleich von VMs mithilfe der Azure CLI

Beginnen Sie mit der Verwendung von Azure Load Balancer, indem Sie mithilfe der Azure CLI einen internen Lastenausgleich und zwei virtuelle Computer erstellen. Weitere Ressourcen sind Azure Bastion, NAT Gateway, ein virtuelles Netzwerk und die erforderlichen Subnetze.

Diagramm der für den internen Lastenausgleich bereitgestellten Ressourcen.

Wenn Sie nicht über ein Azure-Konto verfügen, erstellen Sie ein kostenloses Konto , bevor Sie beginnen.

Voraussetzungen

  • Für diesen Schnellstart ist mindestens Version 2.0.28 der Azure CLI erforderlich. Bei Verwendung von Azure Cloud Shell ist die aktuelle Version bereits installiert.

Erstellen einer Ressourcengruppe

Eine Azure-Ressourcengruppe ist ein logischer Container, in dem Sie Azure-Ressourcen bereitstellen und verwalten.

Erstellen Sie mit az group create eine Ressourcengruppe.

    az group create \
      --name load-balancer-cli-rg \
      --location westus2

Wenn Sie einen internen Lastenausgleich erstellen, wird ein virtuelles Netzwerk als Netzwerk für den Lastenausgleich konfiguriert.

Erstellen des virtuellen Netzwerks

Erstellen Sie zunächst die unterstützenden virtuellen Netzwerkressourcen und das Subnetz, bevor Sie virtuelle Computer bereitstellen und Ihren Lastenausgleich testen. Das virtuelle Netzwerk und das Subnetz enthalten die Ressourcen, die später in diesem Artikel bereitgestellt werden.

Erstellen Sie mit az network vnet create ein virtuelles Netzwerk.

  az network vnet create \
    --resource-group load-balancer-cli-rg \
    --location westus2 \
    --name lb-vnet \
    --address-prefixes 10.1.0.0/16 \
    --subnet-name backend-subnet \
    --subnet-prefixes 10.1.0.0/24

Erstellen eines Azure Bastion-Hosts

In diesem Beispiel erstellen Sie einen Azure Bastion-Host. Der Azure Bastion Host wird später in diesem Artikel verwendet, um die virtuellen Maschinen sicher zu verwalten und die Bereitstellung des Lastenausgleichs zu testen.

Wichtig

Die Stundenpreise gelten ab dem Zeitpunkt der Bereitstellung von Bastion, unabhängig von der Nutzung ausgehender Daten. Weitere Informationen dazu finden Sie unter Preise und SKUs. Wenn Sie Bastion im Rahmen eines Tutorials oder Tests bereitstellen, empfiehlt es sich, diese Ressource zu löschen, nachdem Sie diese benutzt haben.

Erstellen einer öffentlichen IP-Adresse für den Bastion Host

Verwenden Sie az network public-ip create, um eine öffentliche IP-Adresse für den Azure Bastion-Host zu erstellen.

az network public-ip create \
    --resource-group load-balancer-cli-rg  \
    --name lb-vnet-bastion-ip \
    --sku Standard \
    --zone 1 2 3

Bastion-Subnetz erstellen

Erstellen Sie mit az network vnet subnet create ein Subnetz.

az network vnet subnet create \
    --resource-group load-balancer-cli-rg  \
    --name AzureBastionSubnet \
    --vnet-name lb-vnet \
    --address-prefixes 10.1.1.0/27

Erstellen des Bastionhosts

Erstellen Sie mit az network bastion create einen Host.

az config set extension.use_dynamic_install=yes_without_prompt

az network bastion create \
    --resource-group load-balancer-cli-rg  \
    --name lb-vnet-bastion \
    --public-ip-address lb-vnet-bastion-ip \
    --vnet-name lb-vnet \
    --location westus2 \
    --sku Basic \
    --only-show-errors \
    --no-wait

Die Bereitstellung des Azure Bastion-Hosts kann einige Minuten dauern.

Load Balancer erstellen

In diesem Abschnitt erfahren Sie, wie Sie die folgenden Komponenten des Lastenausgleichs erstellen und konfigurieren:

  • Front-End-IP-Pool, der den eingehenden Netzwerkdatenverkehr für den Lastenausgleich empfängt

  • Ein Backend-IP-Pool, an den der Frontend-Pool den lastenausgeglichenen Netzwerkdatenverkehr weiterleitet

  • Integritätstest zum Ermitteln der Integrität der Back-End-VM-Instanzen

  • Lastenausgleichsregel, mit der definiert wird, wie Datenverkehr auf die virtuellen Computer verteilt werden soll

Erstellen Sie die Load-Balancer-Ressource

Erstellen Sie mit az network lb create einen internen Load Balancer.

  az network lb create \
    --resource-group load-balancer-cli-rg \
    --name load-balancer \
    --sku Standard \
    --vnet-name lb-vnet \
    --subnet backend-subnet \
    --backend-pool-name lb-backend-pool \
    --frontend-ip-name lb-frontend

Zustandsprüfung erstellen

Eine Integritätsprüfung überprüft alle VM-Instanzen, um sicherzustellen, dass sie Netzwerkverkehr senden können.

Eine virtuelle Maschine mit fehlgeschlagener Integritätsprüfung wird aus dem Load Balancer entfernt. Nach Behebung des Fehlers wird der virtuelle Computer dem Lastenausgleich wieder hinzugefügt.

Erstellen Sie eine Integritätssonde mit az network lb probe create.

  az network lb probe create \
    --resource-group load-balancer-cli-rg \
    --lb-name load-balancer \
    --name lb-health-probe \
    --protocol tcp \
    --port 80

Erstellen einer Load Balancer-Regel

Durch eine Lastenausgleichsregel wird Folgendes definiert:

  • Front-End-IP-Konfiguration für den eingehenden Datenverkehr

  • Back-End-IP-Pool zum Empfangen des Datenverkehrs

  • Erforderliche Quell- und Zielports

Erstellen Sie mit az network lb rule create eine Load Balancer-Regel.

  az network lb rule create \
    --resource-group load-balancer-cli-rg \
    --lb-name load-balancer \
    --name lb-HTTP-rule \
    --protocol tcp \
    --frontend-port 80 \
    --backend-port 80 \
    --frontend-ip-name lb-frontend \
    --backend-pool-name lb-backend-pool \
    --probe-name lb-health-probe \
    --idle-timeout 15 \
    --enable-tcp-reset true

Erstellen einer Netzwerksicherheitsgruppe

Bei einem standardmäßigen Lastenausgleich müssen die VMs im Backend-Pool über Netzwerkschnittstellen verfügen, die zu einer Netzwerksicherheitsgruppe gehören.

Verwenden Sie az network nsg create, um eine Netzwerksicherheitsgruppe zu erstellen.

  az network nsg create \
    --resource-group load-balancer-cli-rg \
    --name lb-NSG

Erstellen einer Netzwerksicherheitsgruppen-Regel

Verwenden Sie az network nsg rule create, um eine Regel für eine Netzwerksicherheitsgruppe zu erstellen.

  az network nsg rule create \
    --resource-group load-balancer-cli-rg \
    --nsg-name lb-NSG \
    --name lb-NSG-Rule \
    --protocol '*' \
    --direction inbound \
    --source-address-prefix '*' \
    --source-port-range '*' \
    --destination-address-prefix '*' \
    --destination-port-range 80 \
    --access allow \
    --priority 200

Erstellen von Back-End-Servern

In diesem Abschnitt wird Folgendes erstellt:

  • Zwei Netzwerkschnittstellen für die virtuellen Computer

  • Zwei virtuelle Computer, die als Server für den Load Balancer verwendet werden

Erstellen von Netzwerkschnittstellen für die virtuellen Computer

Erstellen Sie mit az network nic create zwei Netzwerkschnittstellen.

  array=(lb-nic-vm1 lb-nic-vm2)
  for vmnic in "${array[@]}"
  do
    az network nic create \
        --resource-group load-balancer-cli-rg \
        --name $vmnic \
        --vnet-name lb-vnet \
        --subnet backend-subnet \
        --network-security-group lb-NSG
  done

Erstellen der virtuellen Computer

Erstellen Sie die virtuellen Computer mit az vm create.

  array=(1 2)
  for n in "${array[@]}"
  do
    az vm create \
    --resource-group load-balancer-cli-rg \
    --name lb-VM$n \
    --nics lb-nic-vm$n \
    --image win2022datacenter \
    --admin-username azureuser \
    --zone $n \
    --no-wait
  done

Die Bereitstellung der virtuellen Computer kann eine Weile dauern.

Hinweis

Azure stellt eine ausgehende Standardzugriffs-IP für VMs bereit, denen keine öffentliche IP-Adresse zugewiesen ist oder die sich im Backendpool eines internen grundlegenden Azure-Lastenausgleichs befinden. Der Mechanismus für Standard-IP-Adressen für den ausgehenden Zugriff stellt eine ausgehende IP-Adresse bereit, die nicht konfigurierbar ist.

Die Standard-IP-Adresse für ausgehenden Zugriff ist deaktiviert, wenn eines der folgenden Ereignisse auftritt:

  • Dem virtuellen Computer wird eine öffentliche IP-Adresse zugewiesen.
  • Die VM wird dem Backendpool eines Standard-Lastenausgleichs mit oder ohne Ausgangsregeln zugeordnet.
  • Dem Subnetz der VM wird eine Azure NAT Gateway-Ressource zugewiesen.

VMs, die Sie mithilfe von VM-Skalierungsgruppen im Orchestrierungsmodus „Flexibel“ erstellen, haben keinen ausgehenden Standardzugriff.

Weitere Informationen zu ausgehenden Verbindungen in Azure finden Sie unter Standardzugriff in ausgehender Richtung in Azure und Verwenden von SNAT (Source Network Address Translation) für ausgehende Verbindungen.

Hinzufügen virtueller Computer zum Back-End-Pool

Fügen Sie mit az network nic ip-config address-pool add die virtuellen Computer zum Back-End-Pool hinzu.

  array=(vm1 vm2)
  for vm in "${array[@]}"
  do
  az network nic ip-config address-pool add \
   --address-pool lb-backend-pool \
   --ip-config-name ipconfig1 \
   --nic-name lb-nic-$vm \
   --resource-group load-balancer-cli-rg \
   --lb-name load-balancer
  done

Erstellen eines NAT Gateways

Um Internetzugriff für ausgehenden Datenverkehr für Ressourcen im Back-End-Pool bereitzustellen, erstellen Sie ein NAT-Gateway.

Öffentliche IP-Adresse erstellen

Verwenden Sie az network public-ip create, um eine einzelne IP-Adresse für die ausgehende Konnektivität zu erstellen.

  az network public-ip create \
    --resource-group load-balancer-cli-rg \
    --name nat-gw-public-ip \
    --sku Standard \
    --zone 1 2 3

Erstellen einer NAT-Gatewayressource

Verwenden Sie az network nat gateway create, um die NAT-Gateway-Ressource zu erstellen. Die im vorherigen Schritt erstellte öffentliche IP-Adresse ist dem NAT-Gateway zugeordnet.

  az network nat gateway create \
    --resource-group load-balancer-cli-rg \
    --name lb-nat-gateway \
    --public-ip-addresses nat-gw-public-ip \
    --idle-timeout 10

Zuordnen eines NAT-Gateways zum Subnetz

Konfigurieren Sie mit az network vnet subnet update das Quellsubnetz im virtuellen Netzwerk so, dass eine spezifische NAT-Gatewayressource verwendet wird.

  az network vnet subnet update \
    --resource-group load-balancer-cli-rg \
    --vnet-name lb-vnet \
    --name backend-subnet \
    --nat-gateway lb-nat-gateway

Erstellen eines virtuellen Testcomputers

Erstellen Sie die Netzwerkschnittstelle mit az network nic create.

  az network nic create \
    --resource-group load-balancer-cli-rg \
    --name lb-nic-testvm \
    --vnet-name lb-vnet \
    --subnet backend-subnet \
    --network-security-group lb-NSG

Erstellen Sie den virtuellen Computer mit az vm create.

  az vm create \
    --resource-group load-balancer-cli-rg \
    --name lb-TestVM \
    --nics lb-nic-testvm \
    --image Win2019Datacenter \
    --admin-username azureuser \
    --no-wait

Es kann einige Minuten dauern, bis der virtuelle Computer bereitgestellt ist.

Installieren von IIS

Verwenden Sie az vm extension set, um IIS auf den virtuellen Back-End-Computern zu installieren und die Standardwebsite auf den Computernamen festzulegen.

  array=(lb-VM1 lb-VM2)
    for vm in "${array[@]}"
    do
     az vm extension set \
       --publisher Microsoft.Compute \
       --version 1.8 \
       --name CustomScriptExtension \
       --vm-name $vm \
       --resource-group load-balancer-cli-rg \
       --settings '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}'
  done

Testen des Lastenausgleichs

  1. Melden Sie sich beim Azure-Portal an.

  2. Auf der Seite Übersicht finden Sie die private IP-Adresse für den Lastenausgleich. Wählen Sie im Menü auf der linken Seite "Alle Dienste>alle Ressourcen>zum Lastenausgleich" aus.

  3. Kopieren Sie in der Übersicht über das Lastenausgleichsmodul die Adresse neben der privaten IP-Adresse. Wenn die private IP-Adresse nicht angezeigt wird, wählen Sie Weitere Informationen aus.

  4. Wählen Sie im Menü auf der linken Seite Alle Dienste>Alle Ressourcen aus. Wählen Sie in der Ressourcenliste die Ressourcengruppe load-balancer-cli-rg und anschließend lb-TestVM aus.

  5. Wählen Sie auf der Seite Übersicht die Option Verbinden>Bastion aus.

  6. Geben Sie den Benutzernamen und das Kennwort an, die Sie beim Erstellen des virtuellen Computers angegeben haben.

  7. Öffnen Sie auf lb-TestVM den Internet Explorer.

  8. Geben Sie die IP-Adresse aus dem vorherigen Schritt in die Adressleiste des Browsers ein. Die Standardseite des IIS-Webservers wird im Browser angezeigt.

    Screenshot der IP-Adresse in der Adressleiste des Browsers.

Bereinigen von Ressourcen

Verwenden Sie den Befehl az group delete, um die Ressourcengruppe, den Lastenausgleich und alle zugehörigen Ressourcen zu entfernen, wenn Sie Ihre Ressourcen nicht mehr benötigen.

  az group delete \
    --name load-balancer-cli-rg

Nächste Schritte

In dieser Schnellstartanleitung gilt:

  • Sie haben einen internen Lastenausgleich erstellt

  • Zwei virtuelle Computer angefügt

  • Konfigurieren der Datenverkehrsregel für den Lastenausgleich sowie des Integritätstests

  • Testen des Lastenausgleichs

Fahren Sie mit dem folgenden Artikel fort, um sich weiter über Azure Load Balancer zu informieren: