你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure 开发测试实验室 环境 由安装了平台即服务(PaaS)资源的多个基础结构即服务(IaaS)虚拟机(VM)组成。 可以使用 Azure 资源管理器 (ARM) 模板预配和部署开发测试实验室环境。
若要部署复杂的解决方案(如环境),可以将模板分解为辅助模板,并通过主模板部署这些模板。 本文介绍如何使用 嵌套模板 部署开发测试实验室环境。 使用一组特定于目标的模板部署环境可促进测试、重用和可读性。
有关嵌套模板(包括代码示例)的一般信息,请参阅 部署 Azure 资源时使用链接模板和嵌套模板。
嵌套模板部署
在开发测试实验室中,可以将 ARM 模板存储在链接到实验室的 Git 存储库中。 使用存储库模板创建环境时,开发测试实验室会将所有模板和项目文件(包括嵌套模板文件)复制到实验室的 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": {}
相关内容
- 有关开发测试实验室环境的详细信息,请参阅使用 ARM 模板创建开发测试实验室环境。
- 有关使用 Visual Studio Azure 资源组项目模板(包括代码示例)的详细信息,请参阅 通过 Visual Studio 创建和部署 Azure 资源组。