Ćwiczenie — używanie tagów i plików parametrów usługi Azure Resource Manager
W tym ćwiczeniu dodasz tagi, aby ułatwić organizowanie i śledzenie zasobów platformy Microsoft Azure. Możesz również użyć pliku parametrów szablonu usługi Azure Resource Manager (ARM), aby umożliwić korzystanie z różnych konfiguracji parametrów dla każdego wdrożenia.
W tym ćwiczeniu użyto narzędzi Azure Resource Manager Tools for Visual Studio Code. Pamiętaj, aby zainstalować to rozszerzenie w programie Visual Studio Code.
Tworzenie tagu w celu śledzenia środowiska wdrażania zasobów i projektu
Najpierw należy utworzyć parametr do użycia jako tag zasobu w szablonie.
W programie Visual Studio Code w pliku azuredeploy.json umieść kursor po zamykającym nawiasie klamrowym dla parametru
storageSKU
. Dodaj przecinek i naciśnij Enter.Wpisz par. Zostanie wyświetlona lista powiązanych fragmentów kodu.
Wybierz arm-param. Pamiętaj, że ta akcja dodaje do szablonu parametr ogólny. Wygląda na to, że ten kod:
"parameter1": { "type": "string", "metadata": { "description": "description" }
Zmień
parameter1
na resourceTags i zmień wartość"type":
na obiektu. Pamiętaj, że parametry mogą mieć typy danych string, secureString, int, bool, object, secureObject i array. Link do przykładowej składni dla tych typów parametrów znajduje się w podsumowaniu tego modułu.Dodaj atrybut o nazwie defaultValue: i ustaw wartość na {"Environment": "Dev", "Project": "Tutorial"}.
Blok parametrów powinien wyglądać następująco:
"parameters": { "storagePrefix": { "type": "string", "minLength": 3, "maxLength": 11 }, "storageSKU": { "type": "string", "defaultValue": "Standard_LRS", "allowedValues": [ "Standard_LRS", "Standard_GRS", "Standard_RAGRS", "Standard_ZRS", "Premium_LRS", "Premium_ZRS", "Standard_GZRS", "Standard_RAGZRS" ] }, "resourceTags": { "type": "object", "defaultValue": { "Environment": "Dev", "Project": "Tutorial" } } },
Użyj tego parametru, aby oznaczyć zasób konta magazynowego. Zmień atrybut
tags:
w definicji zasobu:"tags": "[parameters('resourceTags')]",
Plik powinien wyglądać następująco:
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "storagePrefix": { "type": "string", "minLength": 3, "maxLength": 11 }, "storageSKU": { "type": "string", "defaultValue": "Standard_LRS", "allowedValues": [ "Standard_LRS", "Standard_GRS", "Standard_RAGRS", "Standard_ZRS", "Premium_LRS", "Premium_ZRS", "Standard_GZRS", "Standard_RAGZRS" ] }, "resourceTags": { "type": "object", "defaultValue": { "Environment": "Dev", "Project": "Tutorial" } } }, "functions": [], "variables": { "uniqueStorageName": "[toLower(concat(parameters('storagePrefix'),uniqueString(resourceGroup().id)))]" }, "resources": [{ "name": "[variables('uniqueStorageName')]", "type": "Microsoft.Storage/storageAccounts", "apiVersion": "2019-06-01", "tags": "[parameters('resourceTags')]", "location": "[resourceGroup().location]", "kind": "StorageV2", "sku": { "name": "[parameters('storageSKU')]" } }], "outputs": {} }
Zapisz plik.
Wdróż szablon ARM ze zaktualizowanymi tagami
Wdróż zaktualizowany szablon usługi ARM na platformie Azure. Pamiętaj, aby użyć tego samego
storagePrefix
, którego użyto wcześniej.templateFile="azuredeploy.json" today=$(date +"%d-%b-%Y") DeploymentName="updateTags-"$today az deployment group create \ --name $DeploymentName \ --template-file $templateFile \ --parameters storagePrefix={your-Prefix} storageSKU=Standard_LRS
Wdróż zaktualizowany szablon usługi ARM na platformie Azure. Upewnij się, że użyjesz tego samego
storagePrefix
, którego użyłeś wcześniej.$templateFile = "azuredeploy.json" $today=Get-Date -Format "MM-dd-yyyy" $deploymentName="updateTags-"+"$today" New-AzResourceGroupDeployment ` -Name $deploymentName ` -TemplateFile $templateFile ` -storagePrefix {your storagePrefix} ` -storageSKU Standard_LRS
Sprawdź, czy nowe tagi znajdują się we wdrożeniu
Na platformie Azure wybierz grupę zasobów
[nazwa grupy zasobów piaskownicy] , a następnie wybierz konto magazynowe, które wdrożyłeś.Zwróć uwagę na środowisko : Dev i Project: Tutorial tags:
Używanie pliku parametrów
Obecnie istnieją trzy parametry do wypełnienia przy każdym wdrożeniu tego szablonu. Każdy użytkownik szablonu może utworzyć plik do przechowywania wartości parametrów. W tym miejscu utworzysz plik parametrów do użycia z szablonem.
W programie Visual Studio Code utwórz inny plik. Nazwij to azuredeploy.parameters.dev.json.
W tym pliku dodasz wartości parametrów szablonu, które mają zostać wprowadzone do szablonu dla środowiska deweloperskiego. Zmień wartość tagu, aby zobaczyć, że wdrożenie wprowadza zmianę. Na przykład, możesz zmienić
projectName
na Naucz się:{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { "storagePrefix": { "value": "{unique-prefix}" }, "storageSKU": { "value": "Standard_LRS" }, "resourceTags": { "value": { "Environment": "Dev", "Project": "Learn" } } } }
Pamiętaj, aby zastąpić
{unique-prefix}
unikatowym prefiksem.Zapisz plik.
Wdrażanie szablonu przy użyciu pliku parametrów
W tej sekcji wdrożysz szablon usługi ARM, określając plik parametrów do użycia.
W terminalu programu Visual Studio Code uruchom następujące polecenia Azure CLI:
templateFile="azuredeploy.json" devParameterFile="azuredeploy.parameters.dev.json" today=$(date +"%d-%b-%Y") DeploymentName="addParameterFile-"$today az deployment group create \ --name $DeploymentName \ --template-file $templateFile \ --parameters $devParameterFile
Sprawdź platformę Azure, aby upewnić się, że wdrożenie zakończyło się pomyślnie i czy wartość tagu została zmieniona:
Jako wyzwanie utwórz plik parametrów dla środowiska produkcyjnego. Zmień ścieżkę pliku parametru po uruchomieniu polecenia w celu wdrożenia w środowisku produkcyjnym.
W terminalu programu Visual Studio Code uruchom następujące polecenia programu Azure PowerShell:
$templateFile = "azuredeploy.json" $parameterFile="azuredeploy.parameters.dev.json" $today=Get-Date -Format "MM-dd-yyyy" $deploymentName="addParameterFile-"+"$today" New-AzResourceGroupDeployment ` -Name $deploymentName ` -TemplateFile $templateFile ` -TemplateParameterFile $parameterFile
Sprawdź platformę Azure, aby upewnić się, że wdrożenie zakończyło się pomyślnie i czy wartość tagu została zmieniona:
Jako wyzwanie utwórz plik parametrów dla środowiska produkcyjnego. Zmień ścieżkę pliku parametru po uruchomieniu polecenia w celu wdrożenia w środowisku produkcyjnym.