Dela via


Snabbstart: Skapa en intern lastbalanserare för att belastningsutjämning av virtuella datorer med hjälp av Azure CLI

Kom igång med Azure Load Balancer med hjälp av Azure CLI för att skapa en intern lastbalanserare och två virtuella datorer. Ytterligare resurser är Azure Bastion, NAT Gateway, ett virtuellt nätverk och de nödvändiga undernäten.

Diagram över resurser som distribuerats för intern lastbalanserare.

Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt Azure-konto innan du börjar.

Förutsättningar

  • Den här snabbstarten kräver version 2.0.28 eller senare av Azure CLI. Om du använder Azure Cloud Shell är den senaste versionen redan installerad.

Skapa en resursgrupp

En Azure-resursgrupp är en logisk container där du distribuerar och hanterar dina Azure-resurser.

Skapa en resursgrupp med az group create.

    az group create \
      --name CreateIntLBQS-rg \
      --location westus2

När du skapar en intern lastbalanserare konfigureras ett virtuellt nätverk som nätverk för lastbalanseraren.

Skapa det virtuella nätverket

Innan du distribuerar virtuella datorer och testar lastbalanseraren skapar du det virtuella nätverket och undernätet som stöds. Det virtuella nätverket och undernätet innehåller de resurser som distribueras senare i den här artikeln.

Skapa ett virtuellt nätverk med az network vnet create.

  az network vnet create \
    --resource-group CreateIntLBQS-rg \
    --location westus2 \
    --name myVNet \
    --address-prefixes 10.1.0.0/16 \
    --subnet-name myBackendSubnet \
    --subnet-prefixes 10.1.0.0/24

Skapa en Azure Bastion-värd

I det här exemplet skapar du en Azure Bastion-värd. Azure Bastion-värden används senare i den här artikeln för att hantera de virtuella datorerna på ett säkert sätt och testa distributionen av lastbalanseraren.

Viktigt!

Priserna per timme börjar från det ögonblick då Bastion distribueras, oavsett utgående dataanvändning. Mer information finns i Priser och SKU:er. Om du distribuerar Bastion som en del av en självstudie eller ett test rekommenderar vi att du tar bort den här resursen när du har använt den.

Skapa en offentlig IP-adress för bastion

Använd az network public-ip create för att skapa en offentlig IP-adress för Azure Bastion-värden.

az network public-ip create \
    --resource-group CreateIntLBQS-rg  \
    --name myBastionIP \
    --sku Standard \
    --zone 1 2 3

Skapa ett skyddsundernät

Använd az network vnet subnet create för att skapa ett undernät.

az network vnet subnet create \
    --resource-group CreateIntLBQS-rg  \
    --name AzureBastionSubnet \
    --vnet-name myVNet \
    --address-prefixes 10.1.1.0/27

Skapa skyddsvärd

Använd az network bastion create för att skapa en värd.

az config set extension.use_dynamic_install=yes_without_prompt

az network bastion create \
    --resource-group CreateIntLBQS-rg  \
    --name myBastionHost \
    --public-ip-address myBastionIP \
    --vnet-name myVNet \
    --location westus2 \
    --only-show-errors \
    --no-wait

Det kan ta några minuter innan Azure Bastion-värden distribueras.

Skapa lastbalanseraren

I det här avsnittet beskrivs hur du gör för att skapa och konfigurera följande komponenter i lastbalanseraren:

  • En IP-pool på klientdelen som tar emot inkommande nätverkstrafik i lastbalanseraren

  • En serverdels-IP-pool där klientdelspoolen skickar den belastningsutjämningsbaserade nätverkstrafiken

  • En hälsoavsökning som avgör hälsotillståndet för serverdels-VM-instanserna

  • En lastbalanseringsregel som definierar hur trafik distribueras till de virtuella datorerna

Skapa lastbalanserarens resurs

Skapa en intern lastbalanserare med az network lb create.

  az network lb create \
    --resource-group CreateIntLBQS-rg \
    --name myLoadBalancer \
    --sku Standard \
    --vnet-name myVNet \
    --subnet myBackendSubnet \
    --backend-pool-name myBackEndPool \
    --frontend-ip-name myFrontEnd

Skapa hälsoavsökningen

En hälsoavsökning kontrollerar alla virtuella datorinstanser för att säkerställa att de kan skicka nätverkstrafik.

En virtuell dator med en misslyckad avsökningskontroll tas bort från lastbalanseraren. Den virtuella datorn läggs tillbaka till lastbalanseraren när felet har lösts.

Skapa en hälsoavsökning med az network lb probe create.

  az network lb probe create \
    --resource-group CreateIntLBQS-rg \
    --lb-name myLoadBalancer \
    --name myHealthProbe \
    --protocol tcp \
    --port 80

Skapa en lastbalanseringsregel

En lastbalanseringsregel definierar:

  • Ip-konfiguration för klientdelen för inkommande trafik

  • Serverdels-IP-poolen för att ta emot trafiken

  • Nödvändig käll- och målport

Använd az network lb rule create för att skapa en regel för lastbalanseraren.

  az network lb rule create \
    --resource-group CreateIntLBQS-rg \
    --lb-name myLoadBalancer \
    --name myHTTPRule \
    --protocol tcp \
    --frontend-port 80 \
    --backend-port 80 \
    --frontend-ip-name myFrontEnd \
    --backend-pool-name myBackEndPool \
    --probe-name myHealthProbe \
    --idle-timeout 15 \
    --enable-tcp-reset true

Skapa en nätverkssäkerhetsgrupp

För en standardlastbalanserare måste de virtuella datorerna i serverdelspoolen ha nätverksgränssnitt som tillhör en nätverkssäkerhetsgrupp.

Om du vill skapa en nätverkssäkerhetsgrupp använder du az network nsg create.

  az network nsg create \
    --resource-group CreateIntLBQS-rg \
    --name myNSG

Skapa en regel för nätverkssäkerhetsgruppen

Om du vill skapa en regel för nätverkssäkerhetsgrupp använder du az network nsg rule create.

  az network nsg rule create \
    --resource-group CreateIntLBQS-rg \
    --nsg-name myNSG \
    --name myNSGRuleHTTP \
    --protocol '*' \
    --direction inbound \
    --source-address-prefix '*' \
    --source-port-range '*' \
    --destination-address-prefix '*' \
    --destination-port-range 80 \
    --access allow \
    --priority 200

Skapa serverdelsservrar

I det här avsnittet skapar du:

  • Två nätverksgränssnitt för de virtuella datorerna

  • Två virtuella datorer som ska användas som servrar för lastbalanseraren

Skapa nätverksgränssnitt för de virtuella datorerna

Skapa två nätverksgränssnitt med az network nic create.

  array=(myNicVM1 myNicVM2)
  for vmnic in "${array[@]}"
  do
    az network nic create \
        --resource-group CreateIntLBQS-rg \
        --name $vmnic \
        --vnet-name myVNet \
        --subnet myBackEndSubnet \
        --network-security-group myNSG
  done

Skapa de virtuella datorerna

Skapa de virtuella datorerna med az vm create.

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

Det kan ta några minuter innan de virtuella datorerna distribueras.

Kommentar

Azure tillhandahåller en standard-IP för utgående åtkomst för virtuella datorer som antingen inte har tilldelats någon offentlig IP-adress eller som finns i serverdelspoolen för en intern grundläggande Azure-lastbalanserare. Ip-mekanismen för utgående åtkomst har en utgående IP-adress som inte kan konfigureras.

Standard-IP för utgående åtkomst inaktiveras när någon av följande händelser inträffar:

  • En offentlig IP-adress tilldelas till den virtuella datorn.
  • Den virtuella datorn placeras i serverdelspoolen för en standardlastbalanserare, med eller utan regler för utgående trafik.
  • En Azure NAT Gateway-resurs tilldelas till den virtuella datorns undernät.

Virtuella datorer som du skapar med hjälp av vm-skalningsuppsättningar i flexibelt orkestreringsläge har inte standardåtkomst till utgående trafik.

Mer information om utgående anslutningar i Azure finns i Standardutgående åtkomst i Azure och Använda SNAT (Source Network Address Translation) för utgående anslutningar.

Lägga till virtuella datorer i serverdelspoolen

Lägg till de virtuella datorerna i serverdelspoolen med az network nic ip-config address-pool add.

  array=(VM1 VM2)
  for vm in "${array[@]}"
  do
  az network nic ip-config address-pool add \
   --address-pool myBackendPool \
   --ip-config-name ipconfig1 \
   --nic-name myNic$vm \
   --resource-group CreateIntLBQS-rg \
   --lb-name myLoadBalancer
  done

Skapa NAT-gateway

Skapa en NAT-gateway för att tillhandahålla utgående Internetåtkomst för resurser i serverdelspoolen.

Skapa offentlig IP-adress

Använd az network public-ip create för att skapa en enda IP-adress för den utgående anslutningen.

  az network public-ip create \
    --resource-group CreateIntLBQS-rg \
    --name myNATgatewayIP \
    --sku Standard \
    --zone 1 2 3

Skapa NAT-gatewayresurs

Använd az network nat gateway create för att skapa NAT-gatewayresursen. Den offentliga IP-adress som skapades i föregående steg är associerad med NAT-gatewayen.

  az network nat gateway create \
    --resource-group CreateIntLBQS-rg \
    --name myNATgateway \
    --public-ip-addresses myNATgatewayIP \
    --idle-timeout 10

Associera NAT-gateway med undernät

Konfigurera källundernätet i det virtuella nätverket så att det använder en specifik NAT-gatewayresurs med az network vnet subnet update.

  az network vnet subnet update \
    --resource-group CreateIntLBQS-rg \
    --vnet-name myVNet \
    --name myBackendSubnet \
    --nat-gateway myNATgateway

Skapa en virtuell testdator

Skapa nätverksgränssnittet med az network nic create.

  az network nic create \
    --resource-group CreateIntLBQS-rg \
    --name myNicTestVM \
    --vnet-name myVNet \
    --subnet myBackEndSubnet \
    --network-security-group myNSG

Skapa den virtuella datorn med az vm create.

  az vm create \
    --resource-group CreateIntLBQS-rg \
    --name myTestVM \
    --nics myNicTestVM \
    --image Win2019Datacenter \
    --admin-username azureuser \
    --no-wait

Du kan behöva vänta några minuter på att den virtuella datorn ska distribueras.

Installera IIS

Använd az vm extension set för att installera IIS på de virtuella serverdelsdatorerna och ange standardwebbplatsen till datornamnet.

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

Testa lastbalanseraren

  1. Logga in på Azure-portalen.

  2. På sidan Översikt hittar du den privata IP-adressen för lastbalanseraren. I menyn till vänster väljer du Alla tjänster>Alla resurser>myLoadBalancer.

  3. I översikten över myLoadBalancer kopierar du adressen bredvid privat IP-adress. Om den privata IP-adressen inte visas väljer du Visa mer.

  4. I menyn till vänster väljer du Alla tjänster>Alla resurser. I resurslistan i resursgruppen CreateIntLBQS-rg väljer du myTestVM.

  5. På sidan Översikt väljer du Anslut>Bastion.

  6. Ange det användarnamn och lösenord som du angav när du skapade den virtuella datorn.

  7. Öppna Internet Explorer på myTestVM.

  8. Ange IP-adressen från föregående steg i webbläsarens adressfält. Standardsidan för IIS-webbservern visas i webbläsaren.

    Skärmbild av IP-adressen i webbläsarens adressfält.

Rensa resurser

När resurserna inte längre behövs använder du kommandot az group delete för att ta bort resursgruppen, lastbalanseraren och alla relaterade resurser.

  az group delete \
    --name CreateIntLBQS-rg

Nästa steg

I den här snabbstarten:

  • Du har skapat en intern lastbalanserare

  • Två virtuella datorer har anslutits

  • Konfigurerade trafikregeln för lastbalanseraren och hälsoavsökningen

  • Testade lastbalanseraren

Om du vill veta mer om Azure Load Balancer fortsätter du till: