Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Um ambiente do Azure DevTest Labs consiste em várias VMs (máquinas virtuais) de IaaS (infraestrutura como serviço) com recursos paaS (plataforma como serviço) instalados. Você pode provisionar e implantar ambientes do DevTest Labs usando modelos do ARM (Azure Resource Manager).
Para implantar soluções complexas, como ambientes, você pode dividir um modelo em modelos secundários e implantar esses modelos por meio de um modelo principal. Este artigo descreve o uso de modelos aninhados para implantar um ambiente do DevTest Labs. Usar um conjunto de modelos específicos de destino para implantar um ambiente promove testes, reutilização e legibilidade.
Para obter informações gerais sobre modelos aninhados, incluindo exemplos de código, consulte Usar modelos vinculados e aninhados ao implantar recursos do Azure.
Observação
Se você precisar gerenciar recursos, políticas e configurações de segurança de PaaS em toda a empresa ou a integração de CI/CD entre estágios de implantação e aplicativos, considere usar o ADE (Ambientes de Implantação) do Azure para criar ambientes. O ADE permite que os desenvolvedores implantem rapidamente a infraestrutura de aplicativos usando modelos baseados em projeto, garantindo ambientes consistentes e seguros para suas equipes de desenvolvimento. Para obter mais informações, consulte a documentação dos Ambientes de Implantação do Azure.
Implantação de modelo aninhado
No DevTest Labs, você pode armazenar modelos do ARM em um repositório Git vinculado a um laboratório. Ao usar modelos de repositório para criar um ambiente, o DevTest Labs copia todos os arquivos de modelo e artefato, incluindo arquivos de modelo aninhados, para o contêiner de armazenamento do Azure do laboratório.
O arquivo de modelo principal azuredeploy.json para uma implantação de modelo aninhado usa objetos Microsoft.Resources/deployments para chamar modelos secundários vinculados. Você fornece valores de URI para os modelos vinculados e gera um token SaS (Assinatura de Acesso Compartilhado) para a implantação.
A implantação usa o Azure PowerShell New-AzResourceGroupDeployment ou a CLI az deployment group createdo Azure, especificando o URI do modelo principal e o token SaS. Para obter mais informações, consulte Tutorial: Implantar um modelo vinculado.
Exemplo de modelo aninhado
O arquivo de modelo principal azuredeploy.json no exemplo a seguir mostra o código para uma implantação aninhada. O arquivo de modelo principal define links para o modelo aninhado.
O URI do link para o modelo secundário concatena a localização dos artefatos, a pasta do modelo aninhado, o nome do arquivo do modelo aninhado e a localização do token de Assinatura de Acesso Compartilhado (SaS) dos artefatos. O URI para o arquivo de parâmetros secundários utiliza a localização dos artefatos, a pasta do modelo aninhado, o nome do arquivo de parâmetros aninhados e a localização do token SaS dos artefatos.
"$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": {}
Conteúdo relacionado
- Para saber mais sobre os ambientes do DevTest Labs, confira Usar modelos do ARM para criar ambientes do DevTest Labs.
- Para obter mais informações sobre como usar o modelo de projeto do Grupo de Recursos do Visual Studio Azure, incluindo exemplos de código, consulte Criar e implantar grupos de recursos do Azure por meio do Visual Studio.