Opakované použití výrazů pomocí proměnných šablony Azure Resource Manageru

Dokončeno

V předchozím scénáři jste se rozhodli použít výraz složený z několika funkcí šablony Azure Resource Manageru (ARM) k vytvoření jedinečného názvu pro účet úložiště Azure. Tato flexibilita zajišťuje, že všichni vaši zákazníci budou moct používat šablonu ARM pro svá nasazení. Všimněte si ale, že přidání tohoto výrazu na několika místech je problém při údržbě šablony. Rozhodnete se použít proměnnou pro výraz názvu účtu úložiště, abyste mohli výraz definovat na jednom místě a znovu ho použít v celé šabloně.

Co je proměnná šablony ARM?

Proměnná šablony ARM je koncept, který obsahuje hodnotu pro pozdější použití. Proměnné je nejvhodnější používat, pokud je třeba určit hodnotu na několika místech v šabloně. Všude, kde je proměnná v šabloně použitá, ji Resource Manager nahradí vyřešenou hodnotou.

Máte třeba výraz, který definuje hodnotu pro umístění prostředku. Několik prostředků, které jste definovali v šabloně, vyžadují umístění. Můžete vytvořit proměnnou, která bude obsahovat výraz umístění, a pak proměnnou použít všude, kde je požadované umístění.

Výhody použití proměnných šablony ARM

Proměnné šablony ARM umožňují napsat výraz jednou a pak ho použít na několika místech. Údržba výrazu se navíc provádí na jednom místě a šablona je čitelnější.

Jak používat proměnné šablony ARM?

Proměnné šablony ARM se definují v oddílu variables: {} šablony. Tady je příklad výrazu pro název účtu úložiště, který jste definovali v poslední lekci. Teď definuje hodnotu pro proměnnou storageName.

"variables": {
  "storageName": "[concat(toLower(parameters('storageNamePrefix')), uniqueString(resourceGroup().id))]"
},

Pak tuto proměnnou v šabloně použijte všude, kde potřebujete název účtu úložiště.

"resources": [
  {
    "type": "Microsoft.Storage/storageAccounts",
    "name": "[variables('storageName')]",
    ...
  }
]

Doporučení pro proměnné šablony ARM

Proměnné šablony se zadávají ve stylu camelCase. Nejvhodnější je jejich použití pro hodnoty, které je potřeba zadat více než jednou, zejména pokud je taková hodnota komplexním výrazem.

Nepoužívejte v oddílu variables šablony funkci reference. Funkce reference se řeší za běhu a proměnné se řeší při analýze šablony. Nepoužívejte ani proměnné pro apiVersion v prostředku. Verze rozhraní API určuje schéma prostředku a často nemůžete změnit verzi, aniž byste změnili vlastnosti prostředku.