Cvičení – vytvoření a nasazení šablony Azure Resource Manageru

Dokončeno

Poznámka:

Při první aktivaci sandboxu a přijetí podmínek se váš účet Microsoft přidruží k novému adresáři Azure s názvem Microsoft Learn Sandbox. Navíc se přidáte do speciálního předplatného s názvem Concierge Subscription.

V tomto cvičení vytvoříte šablonu Azure Resource Manageru (šablonu ARM), nasadíte ji do Azure a pak tuto šablonu ARM aktualizujete, abyste přidali parametry a výstupy.

V tomto cvičení se používá rozšíření Azure Resource Manager Tools pro Visual Studio Code. Před zahájením cvičení nezapomeňte toto rozšíření nainstalovat do editoru Visual Studio Code.

Vytvoření šablony ARM

  1. Otevřete Visual Studio Code a vytvořte nový soubor s názvem azuredeploy.json.

  2. Rozšíření šablon ARM pro Visual Studio Code obsahuje nakonfigurované fragmenty kódu, které vám pomůžou s vývojem šablon. Začneme přidáním prázdné šablony. Na první řádek souboru zadejte arm.

  3. Visual Studio Code automaticky zobrazí několik potenciálních možností, které začínají arm!. Vyberte šablonu Azure Resource Manageru (ARM). Visual Studio Code automaticky zpracovává schémata a jazyky pro vaši šablonu.

    Visual Studio Code azuredeploy.json file showing the snippet choices for Azure Resource Manager templates.

    Soubor teď vypadá takto:

    {
      "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {},
      "functions": [],
      "variables": {},
      "resources": [],
      "outputs": {}
    }
    

    Všimněte si, že tento soubor obsahuje všechny části šablony ARM, které jsme popsali v předchozí lekci.

  4. Uložte změny souboru stisknutím ctrl +S.

Nasazení šablony ARM do Azure

Pokud chcete tuto šablonu nasadit do Azure, musíte se přihlásit ke svému účtu Azure z terminálu editoru Visual Studio Code. Musíte mít nainstalované nástroje Azure CLI a přihlásit se ke stejnému účtu, který jste použili k aktivaci sandboxu.

  1. Výběrem možnosti Terminál > nový terminál otevřete okno terminálu.

  2. Pokud se na panelu příkazů v okně terminálu zobrazí bash, máte správné prostředí, ze kterých můžete pracovat, a můžete přeskočit na další část.

  3. Pokud ne, vyberte rozevírací seznam a zvolte Vybrat výchozí profil.

    Screenshot of the Visual Studio Code terminal window with bash in the drop-down.

  4. Vyberte Git Bash.

    Screenshot of the Visual Studio Code terminal window showing the select shell drop-down.

  5. Vyberte Terminál > Nový terminál a otevřete okno terminálu prostředí Bash.

Přihlášení k Azure

  1. V okně terminálu spusťte tento příkaz pro přihlášení k Azure.

    az login
    
  2. Otevře se prohlížeč, abyste se mohli přihlásit ke svému účtu. Po přihlášení se v terminálu zobrazí seznam předplatných přidružených k tomuto účtu. Pokud jste aktivovali sandbox, měli byste vidět předplatné Concierge. Používejte ho ve zbývající části cvičení.

  3. Spuštěním následujícího příkazu v prostředí Bash nastavte výchozí předplatné pro všechny příkazy Azure CLI, které spustíte v této relaci.

    az account set --subscription "Concierge Subscription"
    

    Pokud jste nedávno použili více než jeden sandbox, může být uvedeno více než jedno předplatné Concierge. Pokud ano, pomocí následujících dvou kroků identifikujte a nastavte výchozí předplatné.

    1. Spuštěním následujícího příkazu získejte ID předplatného Concierge.
     az account list \
       --refresh \
       --query "[?contains(name, 'Concierge Subscription')].id" \
       --output table
    
    1. Nastavte výchozí předplatné spuštěním následujícího příkazu a nahraďte {your subscription ID} nejnovějším ID předplatného Concierge.
    az account set --subscription {your subscription ID}
    

Nastavení výchozí skupiny prostředků

Nastavením výchozí skupiny prostředků na skupinu prostředků vytvořenou při aktivaci sandboxu můžete tento parametr vynechat z příkazů Azure CLI v tomto cvičení. Pokud chcete nastavit skupinu prostředků, spusťte následující příkaz.

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

Nasazení šablony do Azure

Spuštěním následujících příkazů nasaďte šablonu ARM do Azure. Šablona ARM ještě nemá žádné prostředky, takže neuvidíte žádné vytvořené prostředky. Měli byste získat úspěšné nasazení.

templateFile="azuredeploy.json"
today=$(date +"%d-%b-%Y")
DeploymentName="blanktemplate-"$today

az deployment group create \
 --name $DeploymentName \
 --template-file $templateFile

V horní části předchozího kódu se nastavují proměnné Azure CLI, mezi které patří cesta k souboru šablony, kterou chcete nasadit, a název tohoto nasazení. V dolní části az deployment group createse šablona nasadí do Azure. Všimněte si, že název nasazení je blanktemplate s datem jako příponou.

Měli byste vidět Running... v terminálu.

Pokud chcete tuto šablonu nasadit do Azure, musíte se přihlásit ke svému účtu Azure z terminálu editoru Visual Studio Code. Ujistěte se, že jste nainstalovali Nástroje Azure PowerShellu z rozšíření editoru Visual Studio Code, a přihlaste se ke stejnému účtu, který aktivoval sandbox.

  1. Na panelu příkazů vyberte Terminál > nový terminál a otevřete okno PowerShellu.

  2. Pokud se na panelu příkazů v okně terminálu zobrazí PowerShell, máte správné prostředí, ze kterého můžete pracovat, a můžete přeskočit na další část.

    Screenshot of the Visual Studio Code terminal window with pwsh terminal selected.

    1. Pokud ne, vyberte šipku dolů a v rozevíracím seznamu vyberte PowerShell. Pokud tato možnost chybí, vyberte Vybrat výchozí profil.

    2. Ve vstupním poli se posuňte dolů a vyberte PowerShell.

      Screenshot of the Visual Studio Code terminal window showing the select shell drop-down.

    3. Výběrem možnosti Terminál > nový terminál otevřete okno terminálu PowerShellu.

Přihlášení k Azure přes Azure PowerShell

  1. V terminálu ve Visual Studio Codu se spuštěním následujícího příkazu přihlaste k Azure. Otevře se prohlížeč, abyste se mohli přihlásit ke svému účtu.

    Connect-AzAccount
    

    Tip

    Modul Az PowerShellu nahrazuje AzureRM a je doporučenou verzí pro interakci s Azure.

  2. Přihlaste se pomocí účtu, který jste použili k aktivaci sandboxu. Po přihlášení v editoru Visual Studio Code zobrazí seznam předplatných přidružených k vašemu účtu v okně terminálu. Pokud jste aktivovali sandbox, zobrazí se blok kódu, který obsahuje "name": "Concierge Subscription". Toto je předplatné, které se použije pro zbytek cvičení.

Nastavení výchozího předplatného pro všechny příkazy PowerShellu v této relaci

  1. Spuštěním následujícího příkazu získejte svoje předplatná a jejich ID. ID předplatného najdete ve druhém sloupci. Vyhledejte předplatné Concierge a zkopírujte hodnotu ve druhém sloupci. Vypadá něco jako cf49fbbc-217c-4eb6-9eb5-a6a6c68295a0:

    Get-AzSubscription
    
  2. Spusťte následující příkaz a nahraďte {ID vašeho předplatného} kódem, který jste zkopírovali v předchozím kroku, abyste změnili aktivní předplatné na předplatné Concierge.

    $context = Get-AzSubscription -SubscriptionId {Your subscription ID}
    Set-AzContext $context
    
  3. Spuštěním následujícího příkazu nechte výchozí skupinu prostředků, která je pro vás vytvořená v prostředí sandboxu. Tato akce umožní vynechat tento parametr ze zbývajících příkazů Azure PowerShellu v tomto cvičení.

    Set-AzDefault -ResourceGroupName <rgn>[sandbox resource group name]</rgn>
    

Nasazení šablony do Azure

Nasaďte šablonu do Azure spuštěním následujících příkazů. Šablona ARM zatím nezahrnuje žádné prostředky, takže žádné vytvořené prostředky neuvidíte.

$templateFile="azuredeploy.json"
$today=Get-Date -Format "MM-dd-yyyy"
$deploymentName="blanktemplate-"+"$today"
New-AzResourceGroupDeployment `
  -Name $deploymentName `
  -TemplateFile $templateFile

Horní část předchozího kódu nastaví proměnné Azure PowerShellu, které zahrnují cestu k souboru nasazení a název nasazení. Potom příkaz New-AzResourceGroupDeployment nasadí šablonu do Azure. Všimněte si, že název nasazení je blanktemplate s datem jako příponou.

Až nasadíte šablonu ARM do Azure, přejděte na web Azure Portal a ujistěte se, že jste v předplatném sandboxu. To uděláte tak, že vyberete svůj avatar v pravém horním rohu stránky. Vyberte Přepnout adresář. V seznamu vyberte adresář Microsoft Learn Sandbox.

  1. V nabídce prostředků vyberte Skupiny prostředků.

  2. Vyberte skupinu prostředků [název skupiny prostředků sandboxu].

  3. V podokně Přehled uvidíte, že jedno nasazení bylo úspěšné.

    Azure portal interface for the resource group overview with the deployments section showing that one succeeded.

  4. Pokud chcete zobrazit podrobnosti o nasazení, vyberte možnost označující 1 úspěšné nasazení.

    Azure portal interface for the deployments with the one deployment listed and a succeeded status.

  5. Výběrem blanktemplate zobrazíte, které prostředky byly nasazeny. V tomto případě zůstane daná sekce prázdná, protože jste v šabloně zatím nezadali žádné prostředky.

    Azure portal interface for the specific deployment with no resources listed.

  6. Nechte stránku v prohlížeči otevřenou. Nasazení znovu zkontrolujete.

Přidání prostředku do šablony ARM

V předchozím úkolu jste se naučili, jak vytvořit prázdnou šablonu a nasadit ji. Teď můžete nasadit skutečný prostředek. V této úloze přidáte do šablony ARM prostředek účtu úložiště Azure pomocí fragmentu kódu z rozšíření Azure Resource Manager Tools pro Visual Studio Code.

  1. V souboru azuredeploy.json v editoru Visual Studio Code umístěte kurzor do závorek v bloku "resources":[],prostředků .

  2. Do závorek zadejte storage. Zobrazí se seznam souvisejících fragmentů kódu. Vyberte arm-storage.

    Visual Studio Code arm-storage snippet shown under the typed word storage.

    Soubor bude vypadat takto:

    {
      "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {},
      "functions": [],
      "variables": {},
      "resources": [
        {
          "name": "storageaccount1",
          "type": "Microsoft.Storage/storageAccounts",
          "apiVersion": "2019-06-01",
          "tags": {
            "displayName": "storageaccount1"
          },
          "location": "[resourceGroup().location]",
          "kind": "StorageV2",
          "sku": {
            "name": "Premium_LRS",
            "tier": "Premium"
          }
        }
      ],
      "outputs": {}
    }
    

    Hodnoty, které byste měli upravit, jsou zvýrazněné v nové části souboru a můžete je procházet stisknutím klávesy Tab .

    Všimněte si, že atributy tags a location jsou vyplněné. Atribut location používá funkci k nastavení umístění prostředku na umístění skupiny prostředků. O značkách a funkcích se dozvíte v dalším modulu.

  3. Změňte hodnoty názvu prostředku a displayName na něco jedinečného (například learnexercise12321). Tento název musí být jedinečný v rámci celého Azure, takže zvolte něco specifického přímo pro vás.

  4. Změňte hodnotu name u SKU z Premium_LRS na Standard_LRS. Změňte hodnotu tier na Standard. Všimněte si, že Visual Studio Code vám pomocí IntelliSense nabízí správné volby hodnot atributů. Odstraňte výchozí hodnotu včetně uvozovek a zadejte uvozovky, abyste tuto práci viděli.

    Screenshot of Visual Studio Code showing the IntelliSense choices for the name attribute of the storage SKU.

  5. Umístění prostředku je nastavené na umístění skupiny prostředků, do kterého se nasadí. Tady nechte zadanou výchozí hodnotu.

  6. Soubor uložte.

Nasazení aktualizované šablonu ARM do Azure

Tady změníte název nasazení tak, aby lépe odpovídal tomu, co toto nasazení dělá.

V terminálu spusťte následující příkazy Azure CLI. Tento fragment kódu je stejný, jaký jste použili už dříve. Změnil se však název nasazení.

templateFile="azuredeploy.json"
today=$(date +"%d-%b-%Y")
DeploymentName="addstorage-"$today

az deployment group create \
  --name $DeploymentName \
  --template-file $templateFile

V terminálu spusťte následující příkazy Azure PowerShellu. Tento fragment kódu je stejný, jaký jste použili už dříve. Změnil se však název nasazení.

$templateFile="azuredeploy.json"
$today=Get-Date -Format "MM-dd-yyyy"
$deploymentName="addstorage-"+"$today"
New-AzResourceGroupDeployment `
  -Name $deploymentName `
  -TemplateFile $templateFile

Kontrola nasazení

  1. Po dokončení nasazení se vraťte do webu Azure Portal v prohlížeči. Přejděte do své skupiny prostředků, kde zjistíte, že teď obsahuje 2 úspěšná nasazení. Vyberte tento odkaz.

    Všimněte si, že seznam obsahuje obě nasazení.

    Screenshot of the Azure portal interface for the deployments with the two deployments listed and succeeded statuses.

  2. Vyberte addstorage.

    Screenshot of the Azure portal interface for the specific deployment with one resource listed.

Všimněte si, že došlo k nasazení účtu úložiště.