Sdílet prostřednictvím


Kurz: Vytvoření a správa škálovací sady virtuálních počítačů pomocí Azure CLI

Škálovací sada virtuálních počítačů umožňuje nasadit a spravovat sadu virtuálních počítačů. V průběhu životního cyklu škálovací sady virtuálních počítačů možná budete muset spustit jednu nebo více úloh správy. V tomto kurzu se naučíte:

  • Vytvoření skupiny zdrojů
  • Vytvoření škálovací sady virtuálních počítačů
  • Horizontální navýšení kapacity a snížení kapacity
  • Zastavení, spuštění a restartování instancí virtuálních počítačů

Pokud nemáte účet Azure, vytvořte si bezplatný účet před tím, než začnete.

Požadavky

Tento článek vyžaduje verzi 2.0.29 nebo novější azure CLI. Pokud používáte Azure Cloud Shell, je už nainstalovaná nejnovější verze.

Vytvoření skupiny zdrojů

Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure. Skupina prostředků musí být vytvořena před škálovací sadou virtuálních počítačů. Vytvořte skupinu prostředků s využitím příkazu az group create. V tomto příkladu se vytvoří skupina prostředků myResourceGroup v oblasti regionu eastus.

az group create --name myResourceGroup --location eastus

Název skupiny prostředků se zadává při vytváření nebo úpravě škálovací sady v průběhu tohoto kurzu.

Vytvořte škálovací sadu

Důležité

Od listopadu 2023 se škálovací sady virtuálních počítačů vytvořené pomocí PowerShellu a Azure CLI ve výchozím nastavení nastaví do flexibilního režimu orchestrace, pokud není zadaný žádný režim orchestrace. Další informace o této změně a akcích, které byste měli provést, najdete v tématu Zásadní změna pro zákazníky PowerShellu nebo rozhraní příkazového řádku VMSS – Microsoft Community Hub.

Škálovací sadu virtuálních počítačů vytvoříte pomocí příkazu az vmss create . Následující příklad vytvoří škálovací sadu s názvem myScaleSet a vygeneruje klíče SSH, pokud neexistují:

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

Vytvoření a konfigurace všech prostředků škálovací sady a instancí virtuálních počítačů trvá několik minut. K distribuci provozu do jednotlivých instancí virtuálních počítačů se vytvoří také nástroj pro vyrovnávání zatížení.

Zobrazení informací o instancích virtuálních počítačů ve škálovací sadě

Pokud chcete zobrazit seznam instancí virtuálních počítačů ve škálovací sadě, použijte příkaz az vm list následujícím způsobem:

az vm list --resource-group myResourceGroup --output table

Následující příklad výstupu ukazuje dvě instance virtuálních počítačů ve škálovací sadě:

Name                 ResourceGroup    Location    Zones
-------------------  ---------------  ----------  -------
myScaleSet_instance1  myResourceGroup  eastus
myScaleSet_instance2  myResourceGroup  eastus

Pokud chcete zobrazit další informace o konkrétní instanci virtuálního počítače, použijte příkaz az vm show a zadejte název virtuálního počítače.

az vm show --resource-group myResourceGroup --name myScaleSet_instance1
{
  "hardwareProfile": {
    "vmSize": "Standard_DS1_v2",
  },
  "id": "/subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myScaleSet_instance1",
  "location": "eastus",
  "name": "myScaleSet_instance1",
  "networkProfile": {
    "networkInterfaces": [
      {
        "deleteOption": "Delete",
        "id": "/subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkInterfaces/mysca2215Nic-0396c71c",
        "primary": true,
        "resourceGroup": "myResourceGroup"
      }
    ]
  },
  "osProfile": {
    "adminUsername": "azureuser",
    "allowExtensionOperations": true,
    "computerName": "myScaleSN30BP1",
    "linuxConfiguration": {
      "disablePasswordAuthentication": true,
      "enableVmAgentPlatformUpdates": false,
      "patchSettings": {
        "assessmentMode": "ImageDefault",
        "patchMode": "ImageDefault"
      },
      "provisionVmAgent": true,
      "ssh": {
        "publicKeys": [
          {
            "keyData": "ssh-rsa",
            "path": "/home/azureuser/.ssh/authorized_keys"
          }
        ]
      }
    },
    "requireGuestProvisionSignal": true,
    "secrets": [],
  },
  "provisioningState": "Succeeded",
  "resourceGroup": "myResourceGroup",
  "storageProfile": {
    "dataDisks": [],
    "imageReference": {
      "exactVersion": "XXXXX",
      "offer": "myOffer",
      "publisher": "myPublisher",
      "sku": "mySKU",
      "version": "latest"
    },
    "osDisk": {
      "caching": "ReadWrite",
      "createOption": "FromImage",
      "deleteOption": "Delete",
      "diskSizeGb": 30,
      "managedDisk": {
        "id": "/subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Compute/disks/myScaleSet_instance1_disk1",
        "resourceGroup": "myResourceGroup",
        "storageAccountType": "Premium_LRS"
      },
      "name": "myScaleSet_instance1_disk1",
      "osType": "Linux",
    }
  },
  "tags": {},
  "timeCreated": "2022-11-16T20:32:15.024581+00:00",
  "type": "Microsoft.Compute/virtualMachines",
  "virtualMachineScaleSet": {
    "id": "/subscriptions/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/myScaleSet",
    "resourceGroup": "myResourceGroup"
  },
}

Vytvoření škálovací sady s konkrétní velikostí instance virtuálního počítače

Po vytvoření škálovací sady na začátku tutoriálu se pro instance virtuálních počítačů zadal výchozí typ virtuálního počítače (SKU) Standard_D1_v2. Na základě výstupu příkazu az vm list-sizes můžete zadat jinou velikost instance virtuálního počítače. Následující příklad vytvoří škálovací sadu s parametrem --vm-sku pro určení velikosti instance virtuálního počítače Standard_F1. Protože vytvoření a konfigurace všech prostředků škálovací sady a instancí virtuálních počítačů trvá několik minut, nemusíte nasazovat následující škálovací sadu:

az vmss create \
  --resource-group myResourceGroup \
  --name myScaleSet \
  --orchestration-mode flexible \
  --image <SKU image> \
  --vm-sku Standard_F1 \
  --admin-user azureuser \
  --generate-ssh-keys

Změna kapacity škálovací sady

Při vytváření škálovací sady na začátku kurzu byly ve výchozím nastavení nasazeny dvě instance virtuálních počítačů. Pomocí --instance-count můžete zadat parametr, který změní počet instancí vytvořených pomocí škálovací sady. Pokud chcete zvýšit nebo snížit počet instancí virtuálních počítačů ve stávající škálovací sadě, můžete kapacitu změnit ručně. Škálovací sada vytvoří nebo odebere požadovaný počet instancí virtuálních počítačů a pak nakonfiguruje nástroj pro vyrovnávání zatížení pro distribuci provozu.

Pokud chcete ručně zvýšit nebo snížit počet instancí virtuálních počítačů ve škálovací sadě, použijte příkaz az vmss scale. Následující příklad nastaví počet instancí virtuálních počítačů ve škálovací sadě na 3:

az vmss scale \
  --resource-group myResourceGroup \
  --name myScaleSet \
  --new-capacity 3

Aktualizace kapacity škálovací sady trvá několik minut. Pokud chcete zobrazit počet instancí, které aktuálně máte ve škálovací sadě, použijte az vm list a proveďte dotaz na přidruženou skupinu prostředků.

az vm list --resource-group myResourceGroup --output table
Name                 ResourceGroup    Location    Zones
-------------------  ---------------  ----------  -------
myScaleSet_instance1  myResourceGroup  eastus
myScaleSet_instance2  myResourceGroup  eastus
myScaleSet_instance3  myResourceGroup  eastus

Zastavení a deallocace instancí virtuálních počítačů ve škálovací sadě

Pokud chcete zastavit všechny instance virtuálních počítačů ve škálovací sadě, použijte příkaz az vmss stop.

az vmss stop \
  --resource-group myResourceGroup \
  --name myScaleSet

Pokud chcete zastavit jednotlivé instance virtuálních počítačů ve škálovací sadě, použijte příkaz az vm stop a zadejte název instance.

az vm stop \
  --resource-group myResourceGroup \
  --name myScaleSet_instance1

Zastavené instance virtuálních počítačů zůstanou přidělené a budou se dál účtovat poplatky za výpočetní prostředky. Pokud místo toho chcete uvolnit instance virtuálních počítačů a účtují se vám pouze poplatky za úložiště, použijte příkaz az vm deallocate a zadejte názvy instancí, které chcete uvolnit.

az vm deallocate \
  --resource-group myResourceGroup \
  --name myScaleSet_instance1

Spuštění instancí virtuálních počítačů ve škálovací sadě

Pokud chcete spustit všechny instance virtuálních počítačů ve škálovací sadě, použijte příkaz az vmss start.

az vmss start \
  --resource-group myResourceGroup \
  --name myScaleSet

Pokud chcete spustit jednotlivé instance virtuálních počítačů ve škálovací sadě, použijte příkaz az vm start a zadejte název instance.

az vm start \
  --resource-group myResourceGroup \
  --name myScaleSet_instance1

Restartujte instance virtuálních počítačů ve škálovací sadě

Pokud chcete restartovat všechny instance virtuálních počítačů ve škálovací sadě, použijte příkaz az vmss restart.

az vmss restart \
  --resource-group myResourceGroup \
  --name myScaleSet

Pokud chcete restartovat jednotlivé instance virtuálních počítačů ve škálovací sadě, použijte příkaz az vm restart a zadejte název instance.

az vm restart \
  --resource-group myResourceGroup \
  --name myScaleSet_instance1

Vyčistěte zdroje

Když odstraníte skupinu prostředků, odstraní se také všechny prostředky obsažené v instancích virtuálních počítačů, virtuální síti a discích. Parametr --no-wait vrátí řízení na příkazový řádek bez čekání na dokončení operace. Parametr --yes potvrzuje, že chcete odstranit prostředky bez další výzvy k tomu.

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

Další kroky

V tomto kurzu jste zjistili, jak pomocí Azure CLI provádět některé základní úlohy vytváření a správy škálovacích sad:

  • Vytvoření skupiny zdrojů
  • Vytvořte škálovací sadu
  • Zobrazení a použití konkrétních velikostí virtuálních počítačů
  • Ruční škálování škálovací sady
  • Provádění běžných úloh správy škálovacích sad, jako je zastavení, spuštění a restartování škálovací sady

V dalším kurzu se dozvíte, jak se připojit k instancím škálovací sady.