Vytvoření prostředků Azure pomocí Azure PowerShellu pomocí skriptu

Dokončeno

Složité nebo opakující se úlohy můžou být časově náročné a náchylné k chybám při ručním provedení. Organizace raději tyto úlohy automatizují, aby snížily náklady a vyhnuly se chybám.

Automatizace je nezbytná v příkladu správy vztahů se zákazníky (CRM), kde testujete software na několika virtuálních počítačích s Linuxem, které je potřeba průběžně odstraňovat a znovu vytvářet. Použití skriptu PowerShellu k automatizaci vytváření virtuálních počítačů je mnohem efektivnější a spolehlivější než ruční vytváření pokaždé.

Kromě základní operace vytvoření virtuálního počítače musí váš skript splňovat několik dalších požadavků:

  • Vytvoření několika virtuálních počítačů: Slouží New-AzVM k vytvoření několika jedinečně pojmenovaných virtuálních počítačů.
  • Parametr skupiny prostředků: Umožňuje skriptu přijmout název skupiny prostředků jako parametr.

V této lekci se naučíte psát a spouštět skript PowerShellu, který splňuje tyto požadavky.

Co je skript PowerShellu?

Skript PowerShellu je textový soubor obsahující příkazy a konstrukty ovládacích prvků. Příkazy jsou vyvolány rutinami a konstruktory ovládacích prvků jsou programovací funkce, jako jsou smyčky, proměnné, parametry, komentáře atd. poskytované Prostředím PowerShell.

Soubory skriptů PowerShellu mají příponu .ps1 souboru. Tyto soubory můžete vytvořit a uložit pomocí libovolného textového editoru.

Tip

Pokud píšete skripty PowerShellu, zvažte použití editoru Visual Studio Code (VS Code), který je bezplatný a podporovaný ve Windows, Linuxu a macOS. Rozšíření PowerShellu pro VS Code nabízí funkce, jako je zvýraznění syntaxe a seznam dostupných rutin.

Následující snímek obrazovky je příkladem VS Code s ukázkovým skriptem pro připojení k Azure a vytvoření virtuálního počítače:

Snímek obrazovky VS Code se skriptem PowerShellu pro vytvoření virtuálního počítače v Azure

Po vytvoření skriptu ho můžete spustit z příkazového řádku PowerShellu tak, že předáte název souboru před tečkou pro aktuální adresář a zpětné lomítko:

.\myScript.ps1

Techniky prostředí PowerShell

PowerShell obsahuje funkce, které se běžně vyskytují v programovacích jazycích. Můžete definovat proměnné, používat větve a smyčky, zachytit parametry příkazového řádku, psát funkce, přidávat komentáře a další. Pro skript, na který se zaměřujete, potřebujete tři klíčové funkce: proměnné, smyčky a parametry.

Proměnné

V PowerShellu se proměnné deklarují pomocí znaku dolaru ($) a přiřazených hodnot pomocí operátoru equals (=). Příklad:

$location = 'eastus'

Pokud chcete určit hodnotu uloženou v proměnné, použijte předponu $ a její název:

$location

Proměnné můžou obsahovat objekty. Například následující definice nastaví $adminCredential proměnnou na objekt vrácený rutinou Get-Credential :

$adminCredential = Get-Credential

Smyčky

PowerShell má několik struktur smyček, včetně For, ForeachDo-Until, , Do-Whilea While. Smyčka Foreach je dobrou volbou pro scénáře, ve kterých potřebujete spustit smyčku přes sadu hodnot v kolekci.

$items = 'web','app','sql'
foreach ($item in $items) {
    $item
}

Parametry

Při vytváření skriptu PowerShellu můžete do skriptu přidat parametry a pak při spuštění skriptu zadat hodnoty těchto parametrů. Příklad:

.\setupEnvironment.ps1 -Name 'web','app','sql' -Location eastus

Uvnitř skriptu zachyťte hodnoty do proměnných. V tomto příkladu jsou parametry Name (Název ) a Location (Umístění):

param (
    [string[]]$Name,
    [string]$Location
)

Tyto parametry můžete použít jako vstup a smyčku k vytvoření sady virtuálních počítačů na základě daných parametrů. Tento přístup zachová obecný skript a vyhne se opakování stejného kódu.

Kombinování technik

Kombinace jazykových funkcí PowerShellu a rutin Azure PowerShellu poskytuje všechny nástroje, které potřebujete k automatizaci úloh Azure. V příkladu CRM můžete vytvořit několik virtuálních počítačů s Linuxem pomocí parametrizovaného skriptu a smyčky pro zjednodušení procesu. Tento skript umožňuje provést složitou operaci v jednom kroku.

Ukázkový skript

Tady je ukázkový skript, který ukazuje použití proměnných, smyček a parametrů k vytvoření několika virtuálních počítačů:

param (
    [string[]]$Name = 'web','app','sql',
    [string]$ResourceGroupName,
    [string]$Location = 'eastus'
)

$adminCredential = Get-Credential

foreach ($vm in $Name) {
    $azVmParams = @{
        ResourceGroupName   = $ResourceGroupName
        Name                = $vm
        Credential          = $adminCredential
        Location            = $Location
        Image               = 'Canonical:0001-com-ubuntu-server-jammy:22_04-lts:latest'
        OpenPorts           = 22
        PublicIpAddressName = $vm
    }
    New-AzVM @azVmParams
}

Spuštění skriptu

Uložte skript jako CreateVMs.ps1 a spusťte ho z příkazového řádku PowerShellu a zadejte požadované parametry:

.\CreateVMs.ps1 -ResourceGroupName <resource-group-name>

Pomocí tohoto skriptu můžete efektivně vytvořit několik virtuálních počítačů v různých skupinách prostředků, automatizovat opakované úlohy a zajistit konzistenci v celém prostředí Azure.