Mengatur lokasi sumber daya dalam templat ARM

Saat menyebarkan templat Azure Resource Manager (templat ARM), Anda harus menyediakan lokasi untuk setiap sumber daya. Lokasi tidak harus sama dengan lokasi grup sumber daya.

Mendapatkan lokasi yang tersedia

Jenis sumber daya yang berbeda didukung di lokasi yang berbeda. Untuk mendapatkan lokasi yang didukung untuk jenis sumber daya, gunakan Azure PowerShell atau Azure CLI.

((Get-AzResourceProvider -ProviderNamespace Microsoft.Batch).ResourceTypes `
  | Where-Object ResourceTypeName -eq batchAccounts).Locations

Menggunakan parameter lokasi

Untuk memungkinkan fleksibilitas saat menyebarkan templat Anda, gunakan parameter untuk menentukan lokasi sumber daya. Tetapkan nilai default parameter ke resourceGroup().location.

Contoh berikut menunjukkan akun penyimpanan yang disebarkan ke lokasi yang ditentukan sebagai 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')]"
    }
  }
}

Langkah berikutnya