Сбой полного развертывания Azure ARM с экземпляром MSSQL PaaS

#sql-server #azure #azure-resource-manager

#sql-server #azure #azure-resource-manager

Вопрос:

Развертывание наших шаблонов ARM (Azure Resource Manager) выполняется в режиме «Complete», который устанавливает ресурсы, а также удаляет их.

В одном из наших шаблонов объявляется Microsoft.Sql/servers/ экземпляр. Первоначальное полное развертывание ARM создаст экземпляр PaaS (платформа как услуга) Microsoft SQL Server без проблем. Ошибка последующих завершенных развертываний ARM с:

  • Код 40636
  • Сообщение не может использовать зарезервированное имя базы данных ‘master’ в этой операции
  • Неверный запрос кода состояния
  • Имя операции Удаление базы данных SQL

Похоже, что последующие развертывания будут пытаться удалить основную базу данных, если она не указана в шаблоне ARM. Ни один из шаблонов Azure Quickstart не демонстрирует, как это сделать. https://resources.azure.com / website перечисляет основную базу данных в качестве ресурса, но большой двоичный объект JSON не работает.

Ответ №1:

Правильный способ указать главную базу данных в качестве ресурса для полного развертывания:

 {
  "type": "databases",
  "kind": "v12.0,system",
  "name": "master",
  "location": "[resourceGroup().location]",
  "apiVersion": "2014-04-01-preview",
  "properties": {},
  "resources": [],
  "dependsOn": [
    "[concat('Microsoft.Sql/servers/', variables('sqlserverName'))]"
  ]
}