Rövid útmutató: Virtuálisgép-méretezési csoport létrehozása az Azure CLI-vel

A következőkre vonatkozik: ✔️ Linux rendszerű virtuális gépek ✔️ Windows rendszerű virtuális gépek egységes méretezési ✔️ csoportjai

Megjegyzés:

Az alábbi cikk az egységes virtuálisgép-méretezési csoportokról szól. Javasoljuk, hogy rugalmas virtuálisgép-méretezési csoportokat használjunk új számítási feladatokhoz. További információ erről az új vezénylési módról a rugalmas virtuálisgép-méretezési csoportok áttekintésében.

A virtuálisgép-méretezési csoportok segítségével automatikusan skálázható virtuális gépeket helyezhet üzembe és kezelhet. A méretezési csoportban lévő virtuális gépek számát beállíthatja manuálisan, de automatikus méretezési szabályokat is megadhat az erőforrás-használat (például processzorhasználat, memóriaigény vagy hálózati forgalom) alapján. Egy Azure-terheléselosztó ezután elosztja a forgalmat a méretezési csoportban lévő virtuálisgép-példányok között. Ebben a rövid útmutatóban létrehoz egy virtuálisgép-méretezési csoportot, és üzembe helyez egy mintaalkalmazást az Azure CLI-vel.

If you don't have an Azure subscription, create an Azure free account before you begin.

Előfeltételek

  • Ez a cikk az Azure CLI 2.0.29-es vagy újabb verzióját igényli. Az Azure Cloud Shell használata esetén a legújabb verzió már telepítve van.

Méretezési csoport létrehozása

Fontos

2023 novemberétől a PowerShell és az Azure CLI használatával létrehozott virtuálisgép-méretezési csoportok alapértelmezés szerint rugalmas vezénylési módba kerülnek, ha nincs megadva vezénylési mód. A módosítással és a végrehajtandó műveletekkel kapcsolatos további információkért tekintse meg a VMSS PowerShell/CLI-ügyfelek kompatibilitástörő változását – Microsoft Community Hub

Mielőtt létrehozhatna egy méretezési csoportot, létre kell hoznia egy erőforráscsoportot az az group create paranccsal. A következő példában létrehozunk egy myResourceGroup nevű erőforráscsoportot az eastus helyen:

az group create --name myResourceGroup --location eastus

Most hozzon létre egy virtuálisgép-méretezési csoportot az az vmss create használatával. A következő példa egy myScaleSet nevű méretezési csoportot hoz létre, amely automatikusan frissül a módosítások alkalmazásakor, valamint SSH-kulcsokat hoz létre, amennyiben azok még nem léteznének a ~/.ssh/id_rsa helyen. Ezek az SSH-kulcsok akkor használhatók, ha be kell jelentkeznie a virtuálisgép-példányokra. Az SSH-kulcsok meglévő készletének használata helyett használja az --ssh-key-value paramétert, és adja meg a kulcsok helyét.

az vmss create \
  --resource-group myResourceGroup \
  --name myScaleSet \
  --image <SKU image> \
  --upgrade-policy-mode automatic \
  --admin-username azureuser \
  --generate-ssh-keys

A méretezési csoport erőforrásainak és virtuális gépeinek létrehozása és konfigurálása néhány percet vesz igénybe.

Mintaalkalmazás üzembe helyezése

A méretezési csoport teszteléséhez telepítsen egy alapszintű webalkalmazást. Az egyéni Azure-szkriptbővítmények használatával egy olyan szkript tölthető le és futtatható, amely egy alkalmazást telepít a virtuálisgép-példányokon. A bővítmény az üzembe helyezést követő konfiguráció, szoftvertelepítés, illetve bármely konfigurációs/felügyeleti feladat végrehajtása során hasznos. További információ: Az egyéni szkriptbővítmény áttekintése.

Telepítsen egy alapszintű NGINX-webkiszolgálót az egyéni szkriptbővítménnyel. Alkalmazza az NGINX-et telepítő egyéni szkriptbővítményt az az vmss extension set paranccsal következő módon:

az vmss extension set \
  --publisher Microsoft.Azure.Extensions \
  --version 2.0 \
  --name CustomScript \
  --resource-group myResourceGroup \
  --vmss-name myScaleSet \
  --settings '{"fileUris":["https://raw.githubusercontent.com/Azure-Samples/compute-automation-configurations/master/automate_nginx.sh"],"commandToExecute":"./automate_nginx.sh"}'

Forgalom engedélyezése az alkalmazáshoz

A méretezési csoport létrehozásakor a rendszer automatikusan üzembe helyezett egy Azure Load Balancert. A terheléselosztó elosztja a forgalmat a méretezési csoportban lévő virtuálisgép-példányok között. Annak érdekében, hogy a forgalom elérhesse a mintául szolgáló webalkalmazást, hozzon létre egy terheléselosztó-szabályt az az network lb rule create paranccsal. Az alábbi példa egy myLoadBalancerRuleWeb nevű szabályt hoz létre:

az network lb rule create \
  --resource-group myResourceGroup \
  --name myLoadBalancerRuleWeb \
  --lb-name myScaleSetLB \
  --backend-pool-name myScaleSetLBBEPool \
  --backend-port 80 \
  --frontend-ip-name loadBalancerFrontEnd \
  --frontend-port 80 \
  --protocol tcp

Méretezési csoport tesztelése

Ha ellenőrizni szeretné, hogyan működik a méretezési csoport, lépjen egy böngészőben a mintául szolgáló webalkalmazáshoz. Kérje le a terheléselosztó nyilvános IP-címét az az network public-ip show paranccsal. A következő példa a myScaleSetLBPublicIP a méretezési csoport részeként létrehozott IP-címét kéri le:

az network public-ip show \
  --resource-group myResourceGroup \
  --name myScaleSetLBPublicIP \
  --query '[ipAddress]' \
  --output tsv

Adja meg a terheléselosztó nyilvános IP-címét egy webböngészőben. A terheléselosztó az egyik virtuálisgép-példányra terjeszti a forgalmat, ahogy az a következő példában látható:

Default web page in NGINX

Clean up resources

Ha már nincs rájuk szükség, az az group delete paranccsal eltávolítható az erőforráscsoport, a méretezési csoport és az összes kapcsolódó erőforrás. A --no-wait paraméter visszaadja a vezérlést a parancssornak, és nem várja meg a művelet befejeztét. A --yes paraméter megerősíti, hogy további kérdés nélkül szeretné törölni az erőforrásokat.

az group delete --name myResourceGroup --yes --no-wait

Következő lépések

Ebben a rövid útmutatóban egy alapszintű méretezési csoportot hoztunk létre, valamint az egyéni szkriptbővítménnyel egy alapszintű NGINX-webkiszolgálót telepítettünk a VM-példányokon. További információkért folytassa az Azure-beli virtuálisgép-méretezési csoportok létrehozásával és kezelésével kapcsolatos oktatóanyagot.