Cvičení – řízení pořadí nasazování prostředků

Dokončeno

V této části začnete tím, že provedete několik základních úkolů nastavení. V editoru Visual Studio Code připojíte relaci terminálu k předplatnému Azure, které je poskytováno v bezplatném prostředí sandboxu Azure. Díky tomu můžete ověřovat příkazy do Azure.

Pak spustíte základní šablonu ARM, která zřídí virtuální počítač se systémem Linux. Po dokončení nasazení ověříte, že je virtuální počítač spuštěný a že je možné se k němu připojit.

Ačkoli práce s virtuálními počítači je běžným úkolem, zjistíte, že prostředek virtuálního počítače vyžaduje komponenty sítě a úložiště, které musí existovat předtím, než může být vytvořen virtuální počítač. Uvidíte, jak dependsOn vám konstruktor umožňuje nastavit pořadí, ve kterém se zřizují prostředky.

Nastavení

Tady otevřete editor Visual Studio Code, vytvoříte relaci PowerShellu a připojíte se k předplatnému Azure, které je poskytováno v bezplatném prostředí sandboxu Azure.

Tyto úkoly nastavení budete v tomto modulu muset provést jednou. Pokud se odhlásíte nebo ztratíte připojení v pozdějším cvičení, můžete se k těmto krokům vrátit.

Otevření PowerShellu v editoru Visual Studio Code

  1. Otevřete Visual Studio Code.

  2. Otevřete okno terminálu pomocí nabídky Terminal (Terminál).

  3. Pokud na pravé straně okna terminálu uvidíte rozevírací nabídku s položkou pwsh, máte správné prostředí pro práci a můžete přejít na další část.

    Screenshot of Terminal window, terminal type.

  4. V opačném případě vyberte rozevírací seznam a zvolte Vybrat výchozí prostředí.

  5. Vyberte pwsh.

    Screenshot that shows selecting a shell from the drop-down menu.

  6. V terminálu vyberte +, abyste vytvořili nový terminál s prostředím pwsh.

Přihlášení k Azure

  1. Spuštěním příkazu Connect-AzAccount se přihlaste k účtu.

    Connect-AzAccount
    

    Zobrazí se okno prohlížeče.

  2. Vyberte účet, který jste použili k aktivaci sandboxu, a při zobrazení výzvy okno prohlížeče zavřete.

Nastavení aktivního předplatného

  1. Spusťte příkaz Get-AzSubscription, pomocí kterého získáte ID předplatného prostředí sandboxu.

    Get-AzSubscription
    

    Vyhledejte položku Concierge Subscription a zkopírujte druhý sloupec. Bude vypadat podobně jako cf49fbbc-217c-4eb6-9eb5-a6a6c68295a0.

  2. Spuštěním příkazu Set-AzContext změňte svoje aktivní předplatné na předplatné Concierge.

    Poznámka:

    Nezapomeňte nahradit část {Your subscription ID} identifikátorem vašeho předplatného Concierge, který jste získali pomocí předchozího příkazu.

    $subscription = Get-AzSubscription -SubscriptionId {Your subscription ID}
    Set-AzContext $subscription
    

Nastavení výchozí skupiny prostředků

Při spuštění příkazu rozhraní Azure CLI v běžném prostředí musíte určit skupinu prostředků.

Prostředí sandboxu vám výchozí skupinu prostředků poskytuje. Aby bylo spouštění následujících příkazů rozhraní Azure CLI jednodušší, nastavíte teď výchozí skupinu prostředků.

Spuštěním rutiny Set-AzDefault nastavte výchozí skupinu prostředků.

Set-AzDefault -ResourceGroupName <rgn>resource group name</rgn>

Poznámka:

Za normálních okolností, když použijete PowerShell k nasazení nějakého prostředku v Azure, musíte zadat skupinu prostředků. Tento požadavek tady obejdete tím, že nastavíte kontext nasazení pomocí Set-AzDefault.

Co je součástí typického nasazení virtuálního počítače

Při nasazování virtuálního počítače mějte na paměti, že k tomu, aby virtuální počítač fungoval, je potřeba spolu s ním nasadit několik dalších prostředků.

Tady je stručný přehled typů prostředků, které je obvykle potřeba nasadit spolu s virtuálním počítačem:

  • Microsoft.Storage/storageAccounts: Účet úložiště poskytuje místo na disku pro operační systém a pro soubory.
  • Microsoft.Network/publicIPAddresses: Veřejná IP adresa vám umožní se k virtuálnímu počítači připojovat z internetu.
  • Microsoft.Network/networkSecurityGroups: Skupina zabezpečení sítě obsahuje pravidla pro zpracování příchozích a odchozích přenosů u vaší virtuální sítě.
  • Microsoft.Network/virtualNetworks: Váš virtuální počítač musí být umístěn ve virtuální síti. Tento prostředek vyžaduje, aby před ním byla nejprve nasazena skupina zabezpečení sítě.
  • Microsoft.Network/networkInterfaces: Tento prostředek závisí na dvou dalších prostředcích – na veřejné IP adrese a na virtuální síti.
  • Microsoft.Compute/virtualMachines: Virtuální počítač je primární prostředek, který chcete nasadit. Je závislý na dvou různých prostředcích – na účtu úložiště a na síťových rozhraních.

Nasazení virtuálního počítače s Linuxem

Tady si stáhnete šablonu ARM z úložiště GitHubu, které vám poskytneme. Tato šablona zřídí virtuální počítač se systémem Linux a všechny prostředky, které jsou nezbytné pro jeho spuštění.

  1. Spuštěním následujícího příkazu curl stáhněte šablonu ARM:

    curl -O 'https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.compute/vm-simple-linux/azuredeploy.json'
    
  2. Spusťte rutinu ConvertTo-SecureString a přiřaďte výsledky do proměnné PowerShellu s názvem $secure:

    $secure = "insecurepassword123!" | ConvertTo-SecureString -AsPlainText -Force
    

    Teď máte zašifrovanou verzi svého hesla, kterou pak můžete předat do skriptu pro nasazování.

  3. Spuštěním příkazu New-AzResourceGroupDeployment šablonu nasaďte:

    New-AzResourceGroupDeployment `
      -TemplateFile "./azuredeploy.json" `
      -adminUsername "azureuser" `
      -vmName "vm1" `
      -adminPasswordOrKey $secure
    

    Spuštění tohoto příkazu může trvat několik minut. Pokud budete chtít, můžete během spuštění tohoto příkazu prozkoumat šablonu ARM na samostatné kartě prohlížeče.

    Všimněte si závislostí prostředků vyhledáním klíčového slova dependsOn. Například prostředek virtuálního počítače závisí na síťovém rozhraní:

    "type": "Microsoft.Compute/virtualMachines",
    "apiVersion": "2020-06-01",
    "name": "[parameters('vmName')]",
    "location": "[parameters('location')]",
    "dependsOn": [
      "[resourceId('Microsoft.Network/networkInterfaces/', variables('networkInterfaceName'))]"
    ],
    

Ověření nasazení

Ověřte, že je virtuální počítač zřízený a že se k němu dá připojit přes SSH. Postup:

  1. Spuštěním příkazu Invoke-Expression se připojte k virtuálnímu počítači přes SSH:

    Invoke-Expression (Get-AzResourceGroupDeployment -Name azuredeploy -ResourceGroupName <rgn>your resource group</rgn>).outputs.sshCommand.value
    

    Po zobrazení výzvy zadejte yes , abyste mohli pokračovat v připojování. Pak zadejte heslo správce. insecurepassword123!

    Důležité

    V běžné praxi zachovávejte hesla v bezpečí. Můžete také používat ověřování pomocí veřejného klíče, což je obvykle bezpečnější než používání hesel.

  2. Z připojení SSH k virtuálnímu počítači vytiskněte spuštěním příkazu hostname název hostitele virtuálního počítače:

    hostname
    

    Zobrazí se název interního hostitele virtuálního počítače: vm1

    vm1
    
  3. Spuštěním příkazu exit opusťte relaci SSH.

    exit
    

Blahopřejeme, úspěšně jste nasadili virtuální počítač se systémem Linux pomocí šablony ARM. Virtuální počítač je běžný typ prostředku, který zahrnuje závislé prostředky.

Nastavení

Tady otevřete editor Visual Studio Code, vytvoříte relaci terminálu a připojíte se k předplatnému Azure, které je poskytováno v bezplatném prostředí sandboxu Azure.

Tyto úkoly nastavení budete v tomto modulu muset provést jednou. Pokud se odhlásíte nebo ztratíte připojení v pozdějším cvičení, můžete se k těmto krokům vrátit.

Otevření prostředí v editoru Visual Studio Code

  1. Otevřete Visual Studio Code.

  2. Otevřete okno terminálu pomocí nabídky Terminal (Terminál).

  3. Pokud se v rozevírací nabídce zobrazuje vaše preferované prostředí (napříkladbash nebo zsh), můžete přejít k další části.

  4. V opačném případě vyberte rozevírací seznam a zvolte Vybrat výchozí prostředí.

  5. Vyberte požadovaný typ prostředí.

    Screenshot that shows selecting a shell from the drop-down menu.

  6. V terminálu vyberte + a vytvořte nový terminál s typem prostředí, které jste si vybrali.

Přihlášení k Azure

  1. Z terminálu spusťte az login:

    az login
    

    Zobrazí se okno prohlížeče.

  2. Vyberte účet, který jste použili k aktivaci sandboxu, a při zobrazení výzvy okno prohlížeče zavřete.

Nastavení aktivního předplatného

Spuštěním následujícího příkazu az account set nastavte prostředí sandboxu Azure jako své aktivní předplatné:

az account set -s "Concierge Subscription"

Poznámka:

Pokud se příkaz nezdaří, spusťte az account list --refresh --all a pak spusťte znovu příkaz az account set.

Nastavení výchozí skupiny prostředků

Při spuštění příkazu rozhraní Azure CLI v běžném prostředí musíte určit skupinu prostředků.

Prostředí sandboxu vám výchozí skupinu prostředků poskytuje. Aby bylo spouštění následujících příkazů rozhraní Azure CLI jednodušší, nastavíte teď výchozí skupinu prostředků.

Spuštěním následujícího příkazu az configure nastavte výchozí skupinu prostředků:

az configure --defaults group=<rgn>resource group name</rgn>

Co je součástí typického nasazení virtuálního počítače

Při nasazování virtuálního počítače mějte na paměti, že k tomu, aby virtuální počítač fungoval, je potřeba spolu s ním nasadit několik dalších prostředků.

Tady je stručný přehled typů prostředků, které je obvykle potřeba nasadit spolu s virtuálním počítačem:

  • Microsoft.Storage/storageAccounts: Účet úložiště poskytuje místo na disku pro operační systém a pro soubory.
  • Microsoft.Network/publicIPAddresses: Veřejná IP adresa vám umožní se k virtuálnímu počítači připojovat z internetu.
  • Microsoft.Network/networkSecurityGroups: Skupina zabezpečení sítě obsahuje pravidla pro zpracování příchozích a odchozích přenosů u vaší virtuální sítě.
  • Microsoft.Network/virtualNetworks: Váš virtuální počítač musí být umístěn ve virtuální síti. Tento prostředek vyžaduje, aby před ním byla nejprve nasazena skupina zabezpečení sítě.
  • Microsoft.Network/networkInterfaces: Tento prostředek závisí na dvou dalších prostředcích – na veřejné IP adrese a na virtuální síti.
  • Microsoft.Compute/virtualMachines: Virtuální počítač je primární prostředek, který chcete nasadit. Je závislý na dvou různých prostředcích – na účtu úložiště a na síťových rozhraních.

Nasazení virtuálního počítače s Linuxem

Tady si stáhnete šablonu Azure Resource Manageru (ARM) z úložiště GitHubu, které vám poskytneme. Tato šablona zřídí virtuální počítač se systémem Linux a všechny prostředky, které jsou nezbytné pro jeho spuštění.

  1. Spuštěním následujícího příkazu wget stáhněte šablonu ARM:

    wget https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.compute/vm-simple-linux/azuredeploy.json
    

    Pokud nemáte příkaz wget nainstalovaný, můžete spustit příkaz curl:

    curl https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.compute/vm-simple-linux/azuredeploy.json > azuredeploy.json
    
  2. Spuštěním příkazu az deployment group create šablonu nasaďte:

    az deployment group create \
      --template-file azuredeploy.json \
      --parameters adminUsername=azureuser vmName=vm1 adminPasswordOrKey='insecurepassword123!'
    

    Spuštění tohoto příkazu může trvat několik minut. Pokud budete chtít, můžete během spuštění tohoto příkazu prozkoumat šablonu ARM na samostatné kartě prohlížeče.

    Všimněte si závislostí prostředků vyhledáním klíčového slova dependsOn. Například prostředek virtuálního počítače závisí na síťovém rozhraní:

    "type": "Microsoft.Compute/virtualMachines",
    "apiVersion": "2020-06-01",
    "name": "[parameters('vmName')]",
    "location": "[parameters('location')]",
    "dependsOn": [
      "[resourceId('Microsoft.Network/networkInterfaces/', variables('networkInterfaceName'))]"
    ],
    

Ověření nasazení

Ověřte, že je virtuální počítač zřízený a že se k němu dá připojit přes SSH. Postup:

  1. Spuštěním následujícího příkazu az deployment group list zobrazte skupiny nasazení ve vašem předplatném:

    az deployment group list --output table
    

    Zobrazí se vám jedna skupina nasazení s názvem azuredeploy:

    Name         ResourceGroup                               State      Timestamp                         Mode
    -----------  ------------------------------------------  ---------  --------------------------------  -----------
    azuredeploy  learn-1ef901aa-3f6a-46aa-8e93-a7f11e5192b8  Succeeded  2020-11-24T17:55:39.762517+00:00  Incremental
    
  2. Spuštěním následujícího příkazu az deployment group show zobrazte příkaz SSH, pomocí kterého se můžete připojit k virtuálnímu počítači:

    az deployment group show \
      --name azuredeploy \
      --query properties.outputs.sshCommand.value \
      --output tsv
    

    Šablona ARM definuje tuto vlastnost v části output. Tady je příklad:

    ssh azureuser@simplelinuxvm-a33zb3sc332ue.westus.cloudapp.azure.com
    
  3. Příkaz spusťte znovu, tentokrát pomocí syntaxe $(), aby se provedl příkaz SSH:

    $(az deployment group show \
      --name azuredeploy \
      --query properties.outputs.sshCommand.value \
      --output tsv)
    

    Po zobrazení výzvy zadejte yes , abyste mohli pokračovat v připojování. Pak zadejte heslo správce. insecurepassword123!

    Důležité

    V běžné praxi zachovávejte hesla v bezpečí. Můžete také používat ověřování pomocí veřejného klíče, což je obvykle bezpečnější než používání hesel.

  4. Z připojení SSH k virtuálnímu počítači vytiskněte spuštěním příkazu hostname název hostitele virtuálního počítače:

    hostname
    

    Zobrazí se název interního hostitele virtuálního počítače: vm1

    vm1
    
  5. Spuštěním příkazu exit opusťte relaci SSH.

    exit
    

Blahopřejeme, úspěšně jste nasadili virtuální počítač se systémem Linux pomocí šablony ARM. Virtuální počítač je běžný typ prostředku, který zahrnuje závislé prostředky.