تعيين موقع المورد في قالب ARM

عند توزيع قالب Azure Resource Manager (قالب ARM)، يجب توفير موقع لكل مورد. لا يلزم أن يكون الموقع هو نفس الموقع الذي يُوجد به موقع مجموعة الموارد.

الحصول على المواقع المتاحة

يتم دعم أنواع الموارد المختلفة في مواقع مختلفة. للحصول على المواقع المدعومة لنوع مورد، استخدم Azure PowerShell أو Azure CLI.

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

استخدام معلمة الموقع

للسماح بالمرونة عند توزيع القالب، استخدم معلمة لتحديد موقع الموارد. عيّن القيمة الافتراضية للمعلمة إلى resourceGroup().location.

يُظهر المثال التالي حساب تخزين يتم توزيعه إلى موقع محدد كمعلمة:

{
  "$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')]"
    }
  }
}

الخطوات التالية