Cvičení – vytvoření a nasazení šablony Azure Resource Manageru
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 (ARM), nasadíte ji do Azure a pak tuto šablonu ARM aktualizujete tak, aby přidala 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
Otevřete Visual Studio Code a vytvořte nový soubor s názvem azuredeploy.json.
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 řádku 1 souboru zadejte rameno.
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.
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.
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.
Výběrem možnosti Terminál > nový terminál otevřete okno terminálu.
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.
Pokud ne, vyberte rozevírací seznam a zvolte Vybrat výchozí profil.
Vyberte Git Bash.
Vyberte Terminál > Nový terminál a otevřete okno terminálu prostředí Bash.
Přihlášení k Azure
V okně terminálu spusťte tento příkaz pro přihlášení k Azure.
az login
V okně prohlížeče, které se otevře, se přihlaste 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í.
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é.
- 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
- 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 zatím nemá žádné prostředky, takže se nevytvořily žádné 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 create
se š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 jsou nástroje Azure PowerShellu nainstalované z rozšíření editoru Visual Studio Code, a přihlaste se ke stejnému účtu, který aktivoval sandbox.
Na panelu příkazů vyberte Terminál > nový terminál a otevřete okno PowerShellu.
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.
Pokud ne, vyberte šipku dolů a v rozevíracím seznamu vyberte PowerShell. Pokud tato možnost chybí, vyberte Vybrat výchozí profil.
Ve vstupním poli se posuňte dolů a vyberte PowerShell.
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
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
Přihlaste se pomocí účtu, který jste použili k aktivaci sandboxu. Po přihlášení nástroj 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 předplatné použijete pro zbytek cvičení.
Nastavení výchozího předplatného pro všechny příkazy PowerShellu v této relaci
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ějak takto: aaaa0a-bb1b-cc2c-dd3d-eeeeee4e4e4e4e:
Get-AzSubscription
Spusťte následující příkaz, přičemž {ID vašeho předplatného} nahraďte id předplatného, které jste zkopírovali v předchozím kroku. Tento příkaz změní vaše aktivní předplatné na předplatné Concierge.
$context = Get-AzSubscription -SubscriptionId {Your subscription ID} Set-AzContext $context
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 nemá žádné prostředky, takže se nevytvořily žádné prostředky.
$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.
Když 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.
V nabídce prostředků vyberte Skupiny prostředků.
Vyberte skupinu prostředků
[název skupiny prostředků sandboxu] .V podokně Přehled uvidíte, že jedno nasazení bylo úspěšné.
Pokud chcete zobrazit podrobnosti o nasazení, vyberte možnost označující 1 úspěšné nasazení.
Výběrem
blanktemplate
zobrazíte, které prostředky byly nasazeny. V tomto případě je to prázdné, protože jste zatím v šabloně nezadali žádné prostředky.Nechte stránku otevřenou v prohlížeči, abyste mohli znovu zkontrolovat nasazení.
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í Nástroje Azure Resource Manageru pro Visual Studio Code.
V souboru azuredeploy.json v editoru Visual Studio Code umístěte kurzor do závorek v bloku
"resources":[],
prostředků .Do závorek zadejte storage. Zobrazí se seznam souvisejících fragmentů kódu. Vyberte arm-storage.
Soubor vypadá takto:
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": {}, "functions": [], "variables": {}, "resources": [ { "type": "Microsoft.Storage/storageAccounts", "apiVersion": "2023-05-01", "name": "storageaccount1", "tags": { "displayName": "storageaccount1" }, "location": "[resourceGroup().location]", "kind": "StorageV2", "sku": { "name": "Premium_LRS" } } ], "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
alocation
jsou vyplněné. Atributlocation
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.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.
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.
Umístění prostředku je nastavené na stejné umístění jako skupina prostředků, ve které je prostředek nasazený. Tady nechte zadanou výchozí hodnotu.
Uložte soubor.
Nasazení aktualizované šablonu ARM do Azure
V této části změníte název nasazení, aby lépe odpovídal účelu nasazení.
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í
Po dokončení nasazení se vraťte do webu Azure Portal v prohlížeči. Přejděte do skupiny prostředků a uvidíte, že teď existují 2 úspěšná nasazení. Vyberte tento odkaz.
Všimněte si, že seznam obsahuje obě nasazení.
Vyberte addstorage.
Všimněte si, že je nasazený účet úložiště.