Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Среда Azure DevTest Labs состоит из нескольких виртуальных машин инфраструктуры как службы (IaaS) с установленными ресурсами platform-as-service (PaaS). Вы можете подготовить и развернуть среды DevTest Labs с помощью шаблонов Azure Resource Manager (ARM).
Чтобы развернуть сложные решения, такие как среды, можно разбить шаблон на вторичные шаблоны и развернуть эти шаблоны с помощью основного шаблона. В этой статье описывается использование вложенных шаблонов для развертывания среды DevTest Labs. Использование набора целевых шаблонов, предназначенных для развертывания среды, способствует тестированию, повторному использованию и удобочитаемости.
Общие сведения о вложенных шаблонах, включая примеры кода, см. в статье "Использование связанных и вложенных шаблонов" при развертывании ресурсов Azure.
Примечание.
Если вам нужно управлять ресурсами PaaS, политиками и параметрами безопасности уровня предприятия, а также интеграцией CI/CD между этапами развертывания и приложениями, рассмотрите использование Azure Deployment Environments (ADE) для создания сред. ADE позволяет разработчикам быстро развертывать инфраструктуру приложений с помощью шаблонов на основе проектов, обеспечивая согласованные и безопасные среды для команд разработки. Дополнительные сведения см. в документации по средам развертывания Azure.
Развертывание вложенных шаблонов
В DevTest Labs можно хранить шаблоны ARM в репозитории Git, связанном с лабораторией. При использовании шаблонов репозитория для создания среды в DevTest Labs все файлы шаблонов и артефактов, включая вложенные шаблоны, копируются в контейнер хранилища Azure лаборатории.
Основной файл шаблона azuredeploy.json для вложенного развертывания шаблона использует Microsoft.Resources/deployments объекты для вызова связанных вторичных шаблонов. Вы предоставляете значения URI для связанных шаблонов и создаете токен общей подписи доступа (SaS) для развертывания.
Развертывание использует Azure PowerShell New-AzResourceGroupDeployment или Azure CLI az deployment group create, указав основной URI шаблона и токен SaS. Дополнительные сведения см. в руководстве по развертыванию связанного шаблона.
Пример вложенных шаблонов
В следующем примере показан код для вложенного развертывания в файле основного шаблона azuredeploy.json. Основной файл шаблона определяет ссылки на вложенный шаблон.
Универсальный код ресурса (URI) ссылки для вторичного шаблона объединяет расположение артефактов, вложенную папку шаблона, имя файла вложенного шаблона и расположение маркера доступа (SaS). Универсальный код ресурса (URI) для файла вторичных параметров использует расположение артефактов, вложенную папку шаблона, имя файла вложенных параметров и расположение токена SaS.
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"_artifactsLocation": {
"type": "string"
},
"_artifactsLocationSasToken": {
"type": "securestring"
}},
"variables": {
"NestOneTemplateFolder": "nestedtemplates",
"NestOneTemplateFileName": "NestOne.json",
"NestOneTemplateParametersFileName": "NestOne.parameters.json"},
"resources": [
{
"name": "NestOne",
"type": "Microsoft.Resources/deployments",
"apiVersion": "2016-09-01",
"dependsOn": [ ],
"properties": {
"mode": "Incremental",
"templateLink": {
"uri": "[concat(parameters('_artifactsLocation'), '/', variables('NestOneTemplateFolder'), '/', variables('NestOneTemplateFileName'), parameters('_artifactsLocationSasToken'))]",
"contentVersion": "1.0.0.0"
},
"parametersLink": {
"uri": "[concat(parameters('_artifactsLocation'), '/', variables('NestOneTemplateFolder'), '/', variables('NestOneTemplateParametersFileName'), parameters('_artifactsLocationSasToken'))]",
"contentVersion": "1.0.0.0"
}
}
}],
"outputs": {}
Связанный контент
- Дополнительные сведения о средах DevTest Labs см. в статье Использование шаблонов ARM для создания сред DevTest Labs.
- Дополнительные сведения об использовании шаблона проекта группы ресурсов Azure Visual Studio, включая примеры кода, см. в статье "Создание и развертывание групп ресурсов Azure с помощью Visual Studio".