Rövid útmutató: Nyilvános terheléselosztó létrehozása virtuális gépek terheléselosztásához az Azure CLI használatával

Az Azure Load Balancer használatának első lépései az Azure CLI használatával egy nyilvános terheléselosztó és két virtuális gép létrehozása. Ezen erőforrások mellett üzembe helyezheti az Azure Bastiont, a NAT Gatewayt, a virtuális hálózatot és a szükséges alhálózatokat.

A standard nyilvános terheléselosztóhoz üzembe helyezett erőforrások diagramja.

Ha még nem rendelkezik Azure-fiókkal, első lépésként hozzon létre egy ingyenes fiókot.

Előfeltételek

  • Ehhez a gyors kezdéshez az Azure CLI 2.0.28-s vagy újabb verziója szükséges. Az Azure Cloud Shell használata esetén a legújabb verzió már telepítve van.

Erőforráscsoport létrehozása

Az Azure-erőforráscsoport olyan logikai tároló, amelybe a rendszer üzembe helyezi és kezeli az Azure-erőforrásokat.

Hozzon létre egy erőforráscsoportot az az group create használatával:

  az group create \
    --name CreatePubLBQS-rg \
    --location eastus

Virtuális hálózat létrehozása

A virtuális gépek üzembe helyezése és a terheléselosztó tesztelése előtt hozza létre a támogató virtuális hálózatot és alhálózatot.

Hozzon létre egy virtuális hálózatot az az network vnet create használatával. A virtuális hálózat és az alhálózat tartalmazza a cikk későbbi részében üzembe helyezett erőforrásokat.

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

Hozzon létre egy nyilvános IP-címet

A webalkalmazás internetes eléréséhez a terheléselosztónak nyilvános IP-címmel kell rendelkeznie.

Használja a az network public-ip create parancsot a terheléselosztó előtérének nyilvános IP-címének létrehozásához.

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

Ha ehelyett zonális nyilvános IP-címet szeretne létrehozni az 1. zónában, használja a következő parancsot:

  az network public-ip create \
    --resource-group CreatePubLBQS-rg \
    --name myPublicIP \
    --sku Standard \
    --zone 1

Terheléselosztó létrehozása

Ez a szakasz részletesen ismerteti a terheléselosztó következő összetevőinek létrehozását és konfigurálását:

  • Egy előtérbeli IP-készlet, amely fogadja a bejövő hálózati forgalmat a terheléselosztón

  • Egy háttérbeli IP-készlet, ahol az előtér pool elküldi a terheléselosztott hálózati forgalmat

  • A háttérben futó VM példányok egészségét ellenőrző vizsgálat

  • Terheléselosztó-szabály, amely meghatározza, hogyan oszlik el a forgalom a virtuális gépek között

A terheléselosztó erőforrásának létrehozása

Nyilvános terheléselosztó létrehozása az network lb create használatával:

  az network lb create \
    --resource-group CreatePubLBQS-rg \
    --name myLoadBalancer \
    --sku Standard \
    --public-ip-address myPublicIP \
    --frontend-ip-name myFrontEnd \
    --backend-pool-name myBackEndPool

Ha a létrehozott nyilvános IP-cím zónaalapú, a megadott zónát meg kell határozni a nyilvános terheléselosztó létrehozásakor.

  az network lb create \
    --resource-group CreatePubLBQS-rg \
    --name myLoadBalancer \
    --sku Standard \
    --public-ip-address myPublicIP \
    --frontend-ip-name myFrontEnd \
    --public-ip-zone 1 \
    --backend-pool-name myBackEndPool

Hozzon létre egy egészségügyi próbát

Az állapotellenőrzés az összes virtuálisgép-példányt ellenőrzi, hogy biztosan tudnak-e hálózati forgalmat küldeni.

A sikertelen mintavétel-ellenőrzéssel rendelkező virtuális gépek törlődnek a terheléselosztóból. A virtuális gép a hiba megoldásakor visszakerül a terheléselosztóba.

Hozzon létre egy állapotellenőrző próbát az network lb probe create parancs segítségével.

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

A terheléselosztási szabály létrehozása

A terheléselosztó-szabály a következőket határozza meg:

  • Előtérbeli IP-konfiguráció a bejövő forgalomhoz

  • A háttérszerver IP-csoport a forgalom fogadásához

  • A szükséges forrás- és célport

Hozzon létre egy terheléselosztó-szabályt az az network lb rule create használatával:

  az network lb rule create \
    --resource-group CreatePubLBQS-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 \
    --disable-outbound-snat true \
    --idle-timeout 15 \
    --enable-tcp-reset true

Hálózati biztonsági csoport létrehozása

Standard terheléselosztó esetén a háttérkészlet virtuális gépeinek hálózati adapterekkel kell rendelkezniük, amelyek egy hálózati biztonsági csoporthoz tartoznak.

Használja az az network nsg create parancsot a hálózati biztonsági csoport létrehozásához:

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

Biztonsági csoport szabály létrehozása

Hozzon létre egy hálózati biztonsági csoport szabályt a "az network nsg rule create" parancs használatával.

  az network nsg rule create \
    --resource-group CreatePubLBQS-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

Bastion host létrehozása

Ebben a szakaszban az Azure Bastion erőforrásait hozza létre. Az Azure Bastion a terheléselosztó háttérkészletében lévő virtuális gépek biztonságos kezelésére szolgál.

Fontos

Az óránkénti díjszabás a Bastion üzembe helyezésének pillanatától kezdődik, a kimenő adathasználattól függetlenül. További információ: Díjszabás és termékváltozatok. Ha a Bastiont egy oktatóanyag vagy teszt részeként helyezi üzembe, javasoljuk, hogy a használat befejezése után törölje ezt az erőforrást.

Hozzon létre egy nyilvános IP-címet

Az az network public-ip create használatával hozzon létre nyilvános IP-címet a bástya gazdagép számára. A nyilvános IP-címet a megerősített gazdagép használja a virtuális gép erőforrásaihoz való biztonságos hozzáféréshez.

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

Megerősített alhálózat létrehozása

Az az network vnet subnet create parancs használatával hozzon létre egy bástya alhálózatot. A bastion alhálózatot a bastion gazdagép használja a virtuális hálózat eléréséhez.

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

Bástya gazdagép létrehozása

Az az network bastion create használatával hozzon létre egy bastion gazdagépet. A bastion hostot a cikk későbbi részében létrehozott virtuális gép erőforrások biztonságos csatlakozására használjuk.

  az network bastion create \
    --resource-group CreatePubLBQS-rg \
    --name myBastionHost \
    --public-ip-address myBastionIP \
    --vnet-name myVNet \
    --sku Basic \
    --location eastus

Az Azure Bastion-gazdagép üzembe helyezése eltarthat néhány percig.

Háttérkiszolgálók létrehozása

Ebben a szakaszban a következőt hozza létre:

  • Két hálózati adapter a virtuális gépekhez

  • A terheléselosztó háttérkiszolgálójaként használandó két virtuális gép

Hálózati adapterek létrehozása a virtuális gépekhez

Hozzon létre két hálózati adaptert az az network nic create használatával:

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

Virtuális gépek létrehozása

Hozza létre a virtuális gépeket az az vm create használatával:

  az vm create \
    --resource-group CreatePubLBQS-rg \
    --name myVM1 \
    --nics myNicVM1 \
    --image win2019datacenter \
    --admin-username azureuser \
    --zone 1 \
    --no-wait
  az vm create \
    --resource-group CreatePubLBQS-rg \
    --name myVM2 \
    --nics myNicVM2 \
    --image win2019datacenter \
    --admin-username azureuser \
    --zone 2 \
    --no-wait

A virtuális gépek üzembe helyezése eltarthat néhány percig. A virtuális gépek létrehozása közben folytathatja a következő lépéseket.

Feljegyzés

Az Azure alapértelmezett kimenő hozzáférési IP-címet biztosít azokhoz a virtuális gépekhez, amelyek vagy nincsenek hozzárendelve nyilvános IP-címhez, vagy egy belső alapszintű Azure-terheléselosztó háttérkészletében találhatók. Az alapértelmezett kimenő hozzáférési IP-mechanizmus olyan kimenő IP-címet biztosít, amely nem konfigurálható.

Az alapértelmezett kimenő hozzáférési IP-cím le van tiltva az alábbi események egyike esetén:

  • A virtuális géphez nyilvános IP-cím van hozzárendelve.
  • A virtuális gép egy standard terheléselosztó háttérkészletében helyezkedik el, kimenő szabályokkal vagy anélkül.
  • Egy Azure NAT Gateway-erőforrás van hozzárendelve a virtuális gép alhálózatához.

A rugalmas vezérlési módban működő virtuális gép skálázási csoportok segítségével létrehozott virtuális gépek nem rendelkeznek alapértelmezett kimenő hozzáféréssel.

Az Azure-beli kimenő kapcsolatokról további információt az Alapértelmezett kimenő hozzáférés az Azure-ban és a Kimenő kapcsolatok forráshálózati címfordításának (SNAT) használata című témakörben talál.

Virtuális gépek hozzáadása a terheléselosztó háttérkészletéhez

Adja hozzá a virtuális gépeket a háttérkészlethez az network nic ip-config address-pool add:

  array=(myNicVM1 myNicVM2)
  for vmnic in "${array[@]}"
  do
    az network nic ip-config address-pool add \
     --address-pool myBackendPool \
     --ip-config-name ipconfig1 \
     --nic-name $vmnic \
     --resource-group CreatePubLBQS-rg \
     --lb-name myLoadBalancer
  done

NAT-átjáró létrehozása

Ha kimenő internet-hozzáférést szeretne biztosítani a háttérkészlet erőforrásaihoz, hozzon létre egy NAT-átjárót.

Nyilvános IP-cím létrehozása

Használja az az network public-ip create parancsot, hogy létrehozzon egyetlen IP-címet a kimenő kapcsolathoz.

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

Ha ehelyett zonális nyilvános IP-címet szeretne létrehozni az 1. zónában, használja a következő parancsot:

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

NAT-átjáró-erőforrás létrehozása

Az az network nat gateway create használatával hozza létre a NAT-átjáró erőforrását. Az előző lépésben létrehozott nyilvános IP-cím a NAT-átjáróhoz van társítva.

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

NAT-átjáró társítása alhálózattal

Konfigurálja a virtuális hálózat forrásalhálózatát úgy, hogy egy adott NAT-átjáró erőforrást használjon a az network vnet subnet update parancs segítségével.

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

Az IIS telepítése

A vm extension set használatával telepítse az IIS-t a virtuális gépekre, és állítsa be az alapértelmezett webhelyet a gép nevére.

  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 CreatePubLBQS-rg \
       --settings '{"commandToExecute":"powershell Add-WindowsFeature Web-Server; powershell Add-Content -Path \"C:\\inetpub\\wwwroot\\Default.htm\" -Value $($env:computername)"}'
  done

A terheléselosztó tesztelése

A terheléselosztó nyilvános IP-címének lekéréséhez használja az az network public-ip show parancsot.

Másolja a nyilvános IP-címet, majd illessze be a böngésző címsorába.

  az network public-ip show \
    --resource-group CreatePubLBQS-rg \
    --name myPublicIP \
    --query ipAddress \
    --output tsv

Képernyőkép a terheléselosztó tesztoldalát megjelenítő böngészőablakról.

Az erőforrások rendszerezése

Ha már nincs rá szükség, az az group delete paranccsal távolítsa el az erőforráscsoportot, a terheléselosztót és az összes kapcsolódó erőforrást.

  az group delete \
    --name CreatePubLBQS-rg

Következő lépések

Ebben a rövid útmutatóban:

  • Létrehozott egy szabványos nyilvános terheléselosztót

  • Csatolt két virtuális gép

  • A terheléselosztó forgalomszabályának és állapotellenőrzésének konfigurálása

  • A terheléselosztó tesztelése

Az Azure Load Balancerről a következő témakörben olvashat bővebben: