Я хотел бы использовать Azure для создания сред под единым ResourceGroup
для клиентов, включающих:
- X веб-серверы
- Y серверов приложений
- 1 база данных
В идеале база данных должна размещаться на сервере, который является частью другой группы ресурсов, поэтому я могу использовать эластичные пулы для нескольких клиентов.
Когда я пытаюсь использовать New-AzureRmResourceGroupDeployment
для этого, я получаю сообщение об ошибке о том, что родительский SqlServer не может быть найден.
Я создал SqlServer через PowerShell:
New-AzureRmSqlServer -servername "MyServer" -ResourceGroupName "Common" -Location "South Central US"
Затем я пытаюсь развернуть ClientA с помощью:
New-AzureRmResourceGroup -Name 'ClientA' -Location "South Central US"
New-AzureRmResourceGroupDeployment -ResourceGroupName 'ClientA' -TemplateFile azure.ClientDeployment.json -Client 'ClientA'
Моя конфигурация развертывания:
{
"parameters": { ... }
"variables": { ... }
"resources": [
{
"name": "MySqlServer/ClientA",
"type": "Microsoft.Sql/servers/databases",
"location": "[resourceGroup().location]",
"apiVersion": "2014-04-01",
"tags": {},
"location": "[resourceGroup().location]",
"properties": {
"edition": "Basic"
},
}
],
"outputs": { }
}
Результат в сообщении об ошибке:
New-AzureRmResourceGroupDeployment : 5:04:33 PM - Resource Microsoft.Sql/servers/databases 'MySqlServer/ClientA' failed with message '{
"code": "NotFound",
"message": "Server 'MySqlServer' does not exist in resource group 'ClientA' in subscription '{...}'.",
"target": null,
"details": [],
"innererror": []
}
Обратите внимание, что обе группы ресурсов (Common и ClientA) находятся в одной подписке и в одном месте.
Возможно ли иметь часть SqlServer в одной группе ресурсов, а часть SqlDatabase - в другой группе ресурсов?