Sdílet prostřednictvím


Kurz: Přidání proměnných do šablony Azure Resource Manageru

V tomto kurzu se dozvíte, jak přidat proměnnou do šablony Azure Resource Manageru (šablona ARM). Proměnné zjednodušují šablony. Umožňují vám napsat výraz jednou a znovu ho použít v celé šabloně. Dokončení tohoto kurzu trvá 7 minut .

Požadavky

Doporučujeme, abyste dokončili kurz o funkcích, ale není to nutné.

Potřebujete Visual Studio Code a Azure PowerShell nebo Azure CLI. Další informace najdete v nástrojích šablon.

Kontrola šablony

Na konci předchozího kurzu měla vaše šablona následující soubor JSON:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storageName": {
      "type": "string",
      "minLength": 3,
      "maxLength": 24
    },
    "storageSKU": {
      "type": "string",
      "defaultValue": "Standard_LRS",
      "allowedValues": [
        "Standard_LRS",
        "Standard_GRS",
        "Standard_RAGRS",
        "Standard_ZRS",
        "Premium_LRS",
        "Premium_ZRS",
        "Standard_GZRS",
        "Standard_RAGZRS"
      ]
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    }
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2025-06-01",
      "name": "[parameters('storageName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('storageSKU')]"
      },
      "kind": "StorageV2",
      "properties": {
        "supportsHttpsTrafficOnly": true
      }
    }
  ]
}

Název účtu úložiště Azure musí být jedinečný, aby bylo možné snadno pokračovat v sestavování šablony ARM. Pokud jste dokončili předchozí kurzy v této sérii, už vás nebaví vymýšlet jedinečný název. Tento problém vyřešíte přidáním proměnné, která pro váš účet úložiště vytvoří jedinečný název.

Použij proměnnou

Následující příklad ukazuje změny přidání proměnné do šablony, která vytvoří jedinečný název účtu úložiště. Zkopírujte celý soubor a nahraďte šablonu jejím obsahem:

{
  "$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"
      ]
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    }
  },
  "variables": {
    "uniqueStorageName": "[concat(parameters('storagePrefix'), uniqueString(resourceGroup().id))]"
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2025-06-01",
      "name": "[variables('uniqueStorageName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('storageSKU')]"
      },
      "kind": "StorageV2",
      "properties": {
        "supportsHttpsTrafficOnly": true
      }
    }
  ]
}

Všimněte si, že obsahuje proměnnou s názvem uniqueStorageName. Tato proměnná používá k vytvoření řetězcové hodnoty čtyři funkce.

Už znáte funkci parametrů , takže ji nebudeme zkoumat.

Znáte také funkci resourceGroup . V tomto případě získáte vlastnost id místo vlastnosti location, jak je znázorněno v předchozím kurzu. Tato id vlastnost vrátí úplný identifikátor skupiny prostředků, včetně ID předplatného a názvu skupiny prostředků.

Funkce uniqueString vytvoří hodnotu hash 13 znaků. Parametry, které předáte, určují vrácenou hodnotu. Pro účely tohoto kurzu použijete ID skupiny prostředků jako vstup pro hodnotu hash. To znamená, že byste mohli tuto šablonu nasadit do různých skupin prostředků a získat jinou jedinečnou řetězcovou hodnotu. Pokud ale nasadíte do stejné skupiny prostředků, získáte stejnou hodnotu.

Funkce concat přebírá hodnoty a kombinuje je. Pro tuto proměnnou přebírá řetězec z parametru a řetězec z uniqueString funkce a kombinuje je do jednoho řetězce.

Parametr storagePrefix umožňuje předat předponu, která vám pomůže identifikovat účty úložiště. Můžete vytvořit vlastní konvenci pojmenování, která usnadňuje identifikaci účtů úložiště po jejich nasazení z rozsáhlého seznamu prostředků.

Nakonec si všimněte, že název účtu úložiště je teď nastavený na proměnnou místo parametru.

Nasazení šablony

Pojďme šablonu nasadit. Nasazení této šablony je jednodušší než předchozí šablony, protože zadáte jenom předponu názvu účtu úložiště.

Pokud jste skupinu prostředků nevytvořili, přečtěte si téma Vytvoření skupiny prostředků. V příkladu se předpokládá, že jste proměnnou nastavili templateFile na cestu k souboru šablony, jak je znázorněno v prvním kurzu.

New-AzResourceGroupDeployment `
  -Name addnamevariable `
  -ResourceGroupName myResourceGroup `
  -TemplateFile $templateFile `
  -storagePrefix "store" `
  -storageSKU Standard_LRS

Poznámka:

Pokud nasazení selže, pomocí verbose přepínače získejte informace o vytvořených prostředcích. Použijte přepínač debug k získání více informací pro ladění.

Ověření nasazení

Nasazení můžete ověřit prozkoumáním skupiny prostředků na webu Azure Portal.

  1. Přihlaste se do Azure Portalu.
  2. V nabídce vlevo vyberte Skupiny prostředků.
  3. Vyberte skupinu prostředků.
  4. Všimněte si, že název nasazeného účtu úložiště je store a následuje řetězec náhodných znaků.

Vyčistěte zdroje

Pokud přecházíte k dalšímu kurzu, není nutné skupinu prostředků mazat.

Pokud se teď zastavujete, možná budete chtít odstranit skupinu prostředků.

  1. Na webu Azure Portal vyberte v nabídce vlevo skupiny prostředků .
  2. Do pole Filtr zadejte název skupiny prostředků pro libovolné textové pole...
  3. Zaškrtněte políčko vedle myResourceGroup a vyberte myResourceGroup nebo název vaší skupiny prostředků.
  4. V horní nabídce vyberte Odstranit skupinu prostředků .

Další kroky

V tomto kurzu přidáte proměnnou, která vytvoří jedinečný název účtu úložiště. V dalším kurzu vrátíte hodnotu z nasazeného účtu úložiště.