Поделиться через


Создание шаблона для устранения неполадок

В некоторых случаях для устранения неполадок с шаблоном лучше всего изолировать и протестировать определенные его части. Вы можете создать шаблон для устранения неполадок, нацеленный на ресурс, который, по вашему мнению, вызывает ошибку.

Например, ошибка возникает, когда шаблон развертывания ссылается на существующий ресурс. Вместо того чтобы оценивать весь шаблон развертывания, создайте шаблон для устранения неполадок, возвращающий данные об этом ресурсе. Выходные данные помогают определить, передаются ли правильные параметры, правильно ли используются функции шаблона и получается ли ожидаемый ресурс.

Развертывание шаблона для устранения неполадок

Шаблон ARM и файл Bicep, приведенные ниже, получают сведения из существующей учетной записи хранения. Вы запускаете развертывание с помощью командлета New-AzResourceGroupDeployment Azure PowerShell или команды az deployment group create Azure CLI. Укажите имя учетной записи хранения и группы ресурсов. Выходные данные представляют собой объект с именами свойств и значениями учетной записи хранения.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storageName": {
      "type": "string"
    },
    "storageResourceGroup": {
      "type": "string"
    }
  },
  "variables": {},
  "resources": [],
  "outputs": {
    "exampleOutput": {
      "value": "[reference(resourceId(parameters('storageResourceGroup'), 'Microsoft.Storage/storageAccounts', parameters('storageName')), '2022-05-01')]",
      "type": "object"
    }
  }
}

В Bicep используйте ключевое слово existing и запустите развертывание из группы ресурсов, в которой находится учетная запись хранения. Используйте scope для доступа к ресурсу в другой группе ресурсов. Дополнительные сведения см. в разделе Существующие ресурсы.

param storageName string

resource stg 'Microsoft.Storage/storageAccounts@2022-05-01' existing = {
  name: storageName
}

output exampleOutput object = stg.properties

Альтернативный способ устранения неполадок

Если вы считаете, что ошибки развертывания вызваны неправильными зависимостями, можно выполнить тесты, разбив шаблон на упрощенные шаблоны. Сначала создайте шаблон, который развертывает только один ресурс (например, SQL Server). Если вы уверены, что развертывание ресурса выполнено правильно, добавьте ресурс, который от него зависит (например, Базу данных SQL). Проверив правильность определения этих двух ресурсов, добавьте другие зависимые ресурсы (например, политики аудита). В перерывах между тестовыми развертываниями удаляйте группу ресурсов, чтобы гарантировать адекватную проверку зависимостей.

Дальнейшие действия