Ange resursplats i ARM-mall
När du distribuerar en Azure Resource Manager-mall (ARM-mall) måste du ange en plats för varje resurs. Platsen behöver inte vara samma plats som resursgruppens plats.
Hämta tillgängliga platser
Olika resurstyper stöds på olika platser. Om du vill hämta de platser som stöds för en resurstyp använder du Azure PowerShell eller Azure CLI.
((Get-AzResourceProvider -ProviderNamespace Microsoft.Batch).ResourceTypes `
| Where-Object ResourceTypeName -eq batchAccounts).Locations
Använda platsparameter
Om du vill tillåta flexibilitet när du distribuerar mallen använder du en parameter för att ange platsen för resurser. Ange standardvärdet för parametern till resourceGroup().location
.
I följande exempel visas ett lagringskonto som distribueras till en plats som anges som en parameter:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"storageAccountType": {
"type": "string",
"defaultValue": "Standard_LRS",
"allowedValues": [
"Standard_LRS",
"Standard_GRS",
"Standard_ZRS",
"Premium_LRS"
],
"metadata": {
"description": "Storage Account type"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"variables": {
"storageAccountName": "[format('storage{0}', uniqueString(resourceGroup().id))]"
},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2022-09-01",
"name": "[variables('storageAccountName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('storageAccountType')]"
},
"kind": "StorageV2",
"properties": {}
}
],
"outputs": {
"storageAccountName": {
"type": "string",
"value": "[variables('storageAccountName')]"
}
}
}
Nästa steg
- En fullständig lista över mallfunktioner finns i ARM-mallfunktioner.
- Mer information om mallfiler finns i Förstå strukturen och syntaxen för ARM-mallar.