ARM şablonunda kaynak konumunu ayarlama
Azure Resource Manager şablonunu (ARM şablonu) dağıtırken her kaynak için bir konum sağlamanız gerekir. Konumun kaynak grubu konumuyla aynı konum olması gerekmez.
Kullanılabilir konumları alma
Farklı konumlarda farklı kaynak türleri desteklenir. Bir kaynak türü için desteklenen konumları almak için Azure PowerShell veya Azure CLI kullanın.
((Get-AzResourceProvider -ProviderNamespace Microsoft.Batch).ResourceTypes `
| Where-Object ResourceTypeName -eq batchAccounts).Locations
Konum parametresini kullanma
Şablonunuzu dağıtırken esneklik sağlamak için, kaynakların konumunu belirtmek üzere bir parametre kullanın. parametresinin varsayılan değerini olarak resourceGroup().location
ayarlayın.
Aşağıdaki örnekte, parametre olarak belirtilen bir konuma dağıtılan bir depolama hesabı gösterilmektedir:
{
"$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')]"
}
}
}
Sonraki adımlar
- Şablon işlevlerinin tam listesi için bkz. ARM şablon işlevleri.
- Şablon dosyaları hakkında daha fazla bilgi için bkz. ARM şablonlarının yapısını ve söz dizimini anlama.