Sdílet prostřednictvím


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

Pokud nemáte předplatné Azure, vytvořte si bezplatný účet před zahájením.

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. Snímek obrazovky, který ukazuje příklad funkce
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. Tlačítko pro spuštění Azure Cloud Shellu
Zvolte tlačítko Cloud Shell v pruhu nabídky v pravém horním rohu webu Azure Portal. Snímek obrazovky znázorňující tlačítko Cloud Shell na webu 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. Kód nebo příkaz vložte do relace Cloud Shell následujícím způsobem: na Windows a Linuxu stiskněte Ctrl+Shift+V, na macOS použijte Cmd+Shift+V.

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

Vytvoření skupiny zdrojů

Skupina prostředků Azure je logický kontejner, do kterého 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 je vytvořena skupina prostředků s názvem myResourceGroup v regionu EastUS.

New-AzResourceGroup -ResourceGroupName "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ření škálovací sady virtuálních počítačů

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

$cred = Get-Credential

Nyní vytvořte škálovací sadu virtuálních počítačů pomocí New-AzVmss. K distribuci provozu do jednotlivých instancí virtuálních počítačů se vytvoří také nástroj pro vyrovnávání zatížení. Vyrovnávač zatížení obsahuje pravidla pro distribuci provozu na portu TCP 80 a povolení provozu na vzdálené ploše na portu TCP 3389 a vzdálené komunikace PowerShell 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. K distribuci 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 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í 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. 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 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.

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 š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 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 deallocace 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č po zastavení zůstal ve zřízeném stavu, přidejte -StayProvisioned parametr do předchozího příkazu. Účtují se pravidelné poplatky za výpočetní výkon za zastavené virtuální počítače, které zůstávají zřízené.

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"

Restartujte instance 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č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 -Force potvrzuje, že chcete odstranit prostředky bez další výzvy k tomu. Parametr -AsJob předá řízení zpět na příkazový řádek, aniž by čekal na dokončení operace.

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

Další kroky

V tomto kurzu jste se naučili provádět některé základní úlohy vytváření a správy škálovací sady pomocí Azure PowerShellu:

  • 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.