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

Š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í nebo snížení kapacity (škálování)
  • Zastavení, spuštění a restartování instancí virtuálních počítačů

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Azure Cloud Shell

Azure hostí interaktivní prostředí Azure Cloud Shell, které můžete používat v prohlížeči. Pro práci se službami Azure můžete v prostředí Cloud Shell použít buď Bash, nebo PowerShell. Předinstalované příkazy Cloud Shellu můžete použít ke spuštění kódu v tomto článku, aniž byste museli instalovat cokoli do místního prostředí.

Spuštění služby Azure Cloud Shell:

Možnost Příklad nebo odkaz
Vyberte Vyzkoušet v pravém horním rohu bloku kódu nebo příkazu. Výběrem možnosti Vyzkoušet se kód ani příkaz automaticky nekopíruje do Cloud Shellu. Screenshot that shows an example of Try It for Azure Cloud Shell.
Přejděte na adresu https://shell.azure.com nebo výběrem tlačítka Spustit Cloud Shell otevřete Cloud Shell v prohlížeči. Button to launch Azure Cloud Shell.
Zvolte tlačítko Cloud Shell v pruhu nabídky v pravém horním rohu webu Azure Portal. Screenshot that shows the Cloud Shell button in the Azure portal

Použití Azure Cloud Shellu:

  1. Spusťte Cloud Shell.

  2. Výběrem tlačítka Kopírovat v bloku kódu (nebo bloku příkazů) zkopírujte kód nebo příkaz.

  3. Vložte kód nebo příkaz do relace Cloud Shellu tak, že ve Windows a Linuxu vyberete ctrl+Shift+V nebo vyberete Cmd+Shift+V v macOS.

  4. Stisknutím klávesy Enter spusťte kód nebo příkaz.

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ů pomocí příkazu New-AzResourceGroup . V tomto příkladu se vytvoří skupina prostředků myResourceGroup v oblasti EastUS.

New-AzResourceGroup -ResourceGroupName "myResourceGroup" -Location "EastUS"

Název skupiny prostředků zadáte při vytváření nebo úpravě škálovací sady v rámci tohoto kurzu.

Vytvoření škálovací sady virtuálních počítačů

Nejprve pomocí rutiny Get-Credential nastavte uživatelské jméno a heslo správce instancí virtuálních počítačů:

$cred = Get-Credential

Teď vytvořte škálovací sadu virtuálních počítačů pomocí Rutiny New-AzVmss. Za účelem distribuce provozu do jednotlivých instancí virtuálních počítačů se vytvoří také nástroj pro vyrovnávání zatížení. Nástroj pro vyrovnávání zatížení obsahuje pravidla pro distribuci provozu na portu TCP 80 a povolení provozu vzdálené plochy na portu TCP 3389 a vzdálené komunikaci PowerShellu na portu TCP 5985:

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.

New-AzVmss `
  -ResourceGroupName "myResourceGroup" `
  -VMScaleSetName "myScaleSet" `
  -OrchestrationMode "Flexible" `
  -Location "EastUS" `
  -Credential $cred

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

Zobrazení instancí 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 rutinu Get-AzVM následujícím způsobem:

Get-AzVM -ResourceGroupName "myResourceGroup"

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

ResourceGroupName                Name Location          VmSize  OsType      ProvisioningState 
-----------------                ---- --------          ------  ------       ----------------- 
myResourceGroup   myScaleSet_instance1   eastus Standard_DS1_v2 Windows         Succeeded     
myResourceGroup   myScaleSet_instance2   eastus Standard_DS1_v2 Windows         Succeeded     

Pokud chcete zobrazit další informace o konkrétní instanci virtuálního počítače, použijte Rutinu Get-AzVM a zadejte název virtuálního počítače.

Get-AzVM -ResourceGroupName "myResourceGroup" -name "myScaleSet_instance1" 
ResourceGroupName      : myresourcegroup
Id                     : /subscriptions/resourceGroups/myresourcegroup/providers/Microsoft.Compute/virtualMachines/myScaleSet_instance1
VmId                   : d27b5fde-d469-4087-b08f-87d0bd8df786
Name                   : myScaleSet_instance1
Type                   : Microsoft.Compute/virtualMachines
Location               : eastus
Tags                   : {}
HardwareProfile        : {VmSize}
NetworkProfile         : {NetworkInterfaces}
OSProfile              : {ComputerName, AdminUsername, WindowsConfiguration, Secrets, AllowExtensionOperations, RequireGuestProvisionSignal}
ProvisioningState      : Succeeded
StorageProfile         : {ImageReference, OsDisk, DataDisks}
VirtualMachineScaleSet : {Id}
TimeCreated            : 11/16/2022 11:02:02 PM

Vytvoření škálovací sady s konkrétní velikostí instancí virtuálních počítačů

Při vytváření škálovací sady na začátku kurzu jste pro instance virtuálních počítačů zadali výchozí skladovou položku virtuálního počítače Standard_D1_v2. Pomocí parametru -VMSize můžete zadat jinou velikost instance virtuálního počítače, která určuje velikost instance virtuálního počítače Standard_F1.

New-AzVmss `
  -ResourceGroupName "myResourceGroup" `
  -VMScaleSetName "myScaleSet" `
  -OrchestrationMode "Flexible" `
  -VMSize "Standard_F1" `
  -Location "EastUS" `
  -Credential $cred

Změna kapacity škálovací sady

Při vytváření škálovací sady se ve výchozím nastavení nasadily dvě instance virtuálních počítačů. Pokud chcete zvýšit nebo snížit počet instancí virtuálních počítačů ve škálovací sadě, můžete ručně změnit kapacitu. Š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.

Nejprve vytvořte objekt škálovací sady pomocí rutiny Get-AzVmss a zadejte novou hodnotu pro sku.capacity. Pokud chcete použít změnu kapacity, použijte Update-AzVmss. Následující příklad nastaví počet instancí virtuálních počítačů ve vaší škálovací sadě na 3:

# Get current scale set
$vmss = Get-AzVmss -ResourceGroupName "myResourceGroup" -VMScaleSetName "myScaleSet"

# Set and update the capacity of your scale set
$vmss.sku.capacity = 3
Update-AzVmss -ResourceGroupName "myResourceGroup" -Name "myScaleSet" -VirtualMachineScaleSet $vmss 

Aktualizace kapacity škálovací sady trvá několik minut. Pokud chcete zobrazit počet instancí, které teď máte ve škálovací sadě, použijte Rutinu Get-Az:

Get-AzVm -ResourceGroupName "myResourceGroup" 

Následující příklad výstupu ukazuje, že kapacita škálovací sady je teď 3:

ResourceGroupName                Name Location          VmSize  OsType    ProvisioningState 
-----------------                ---- --------          ------  ------    ----------------- 
myResourceGroup   myScaleSet_instance1   eastus Standard_DS1_v2 Windows       Succeeded     
myResourceGroup   myScaleSet_instance2   eastus Standard_DS1_v2 Windows       Succeeded     
myResourceGroup   myScaleSet_instance3   eastus Standard_DS1_v2 Windows       Succeeded   

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

Pokud chcete zastavit jednotlivé instance virtuálních počítačů, použijte Stop-AzVm a zadejte názvy instancí.

Stop-AzVM -ResourceGroupName "myResourceGroup" -name "myScaleSet_instance1"

Ve výchozím nastavení jsou zastavené virtuální počítače uvolněné a neúčtují se poplatky za výpočetní prostředky. Pokud chcete, aby virtuální počítače po zastavení zůstaly ve zřízeném stavu, přidejte k předchozímu příkazu parametr -StayProvisioned. U zastavených virtuálních počítačů, které zůstanou zřízené, se účtují obvyklé poplatky za výpočty.

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 Start-AzVmss.

Start-AzVmss -ResourceGroupName "myResourceGroup" -VMScaleSetName "myScaleSet" 

Pokud chcete spustit jednotlivé instance virtuálního počítače ve škálovací sadě, použijte Start-AzVM a zadejte název instance.

Start-AzVM -ResourceGroupName "myResourceGroup" -name "myScaleSet_instance1"

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

Pokud chcete restartovat všechny virtuální počítače ve škálovací sadě, použijte Restart-AzVmss.

Restart-AzVmss -ResourceGroupName "myResourceGroup" -VMScaleSetName "myScaleSet"

Pokud chcete restartovat jednotlivé instance, použijte [Restart-AzVM] a zadejte název instance.

Restart-AzVM -ResourceGroupName "myResourceGroup" -name "myScaleSet_instance1"

Vyčištění prostředků

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

Remove-AzResourceGroup -Name "myResourceGroup" -Force -AsJob

Další kroky

V tomto kurzu jste zjistili, jak provádět několik běžných úloh vytvoření a správy škálovací sady pomocí Azure PowerShellu:

  • Vytvoření skupiny zdrojů
  • Vytvoření škálovací sady
  • Zobrazení a použití specifický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.