Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Você pode exportar grupos de recursos do Azure para um novo modelo do Azure Resource Manager que pode ser reimplantado. O processo de exportação interpreta os recursos existentes e cria um modelo do Gerenciador de Recursos que, quando implantado, resulta em um grupo de recursos semelhante. Ao usar a opção de exportação em um grupo de recursos que contém extensões de máquina virtual (VM), você precisa considerar itens como compatibilidade de extensão e configurações protegidas.
Este artigo detalha como o processo de exportação do grupo de recursos funciona para extensões de máquina virtual. Inclui uma lista de extensões suportadas e detalhes sobre como lidar com dados seguros.
Extensões de VM suportadas
Muitas extensões de VM estão disponíveis. Não é possível exportar todas as extensões para um modelo do Gerenciador de Recursos usando o recurso de script de automação. Se uma extensão de máquina virtual não for suportada, você precisará colocá-la manualmente de volta no modelo exportado.
Você pode exportar as seguintes extensões usando o recurso de script de automação:
Acronis Backup, Acronis Backup Linux, BGInfo, BMC Control-M Agent Linux, BMC Control-M Agent Windows, Chef Client, Script Personalizado, Custom Script Extension, Custom Script for Linux, Datadog Linux Agent, Datadog Windows Agent, Docker Extension, DSC Extension, Dynatrace Linux, Dynatrace Windows, HPE Security Application Defender for Cloud, IaaS Antimalware, IaaS Diagnostics, Linux Chef Client, Linux Diagnostic, OS Patching for Linux, Agente Puppet, Site24x7 APM Insight, Site24x7 Linux Server, Site24x7 Windows Server, Trend Micro DSA, Trend Micro DSA Linux, VM Access para Linux, VM Access para Linux, VM Snapshot, VM Snapshot Linux
Exportar o grupo de recursos
Para exportar um grupo de recursos para um modelo reutilizável, conclua as seguintes etapas:
- Inicie sessão no portal do Azure.
- No menu Hub, selecione Grupos de Recursos.
- Selecione o grupo de recursos de destino na lista.
- No painel Grupo de recursos, selecione Exportar modelo na seção Automação.
O script de automação do Azure Resource Manager produz um modelo do Resource Manager, um arquivo de parâmetros e vários scripts de implantação de exemplo, como scripts PowerShell e CLI do Azure. Neste ponto, você pode baixar o modelo exportado usando o botão de download, adicionar o modelo à biblioteca de modelos ou reimplantar o modelo usando o botão Implantar .
Definir definições protegidas
Muitas extensões de VM do Azure incluem uma configuração de definições protegidas que criptografa dados confidenciais, como credenciais e cadeias de caracteres de configuração. As configurações protegidas não são exportadas com o script de automação. Se necessário, reinsira as configurações protegidas no modelo exportado.
Etapa 1: Remover o parâmetro do modelo
Quando você exporta um grupo de recursos, um único parâmetro de modelo é criado para fornecer um valor para as configurações protegidas exportadas. Você pode remover esse parâmetro.
Para remover o parâmetro, examine a lista de parâmetros e exclua o que se parece com este exemplo JSON:
"extensions_extensionname_protectedSettings": {
"defaultValue": null,
"type": "SecureObject"
}
Etapa 2: Obter propriedades para configurações protegidas
Como cada configuração protegida tem um conjunto de propriedades necessárias, você precisa reunir uma lista dessas propriedades. Você pode encontrar cada parâmetro da configuração de definições protegidas no esquema do Azure Resource Manager no GitHub. Esse esquema inclui apenas os conjuntos de parâmetros para as extensões listadas na seção de visão geral deste artigo.
De dentro do repositório de esquema, procure a extensão desejada. Depois de encontrar o objeto da protectedSettings
extensão, tome nota de cada parâmetro. No exemplo a seguir da IaasDiagnostic
extensão, os parâmetros necessários são storageAccountName
, storageAccountKey
e storageAccountEndPoint
:
"protectedSettings": {
"type": "object",
"properties": {
"storageAccountName": {
"type": "string"
},
"storageAccountKey": {
"type": "string"
},
"storageAccountEndPoint": {
"type": "string"
}
},
"required": [
"storageAccountName",
"storageAccountKey",
"storageAccountEndPoint"
]
}
Etapa 3: Recriar a configuração protegida
No modelo exportado, procure protectedSettings
. Substitua o objeto de configuração protegido exportado por um novo que inclua os parâmetros de extensão necessários e um valor para cada um.
No exemplo da extensão, a nova configuração de IaasDiagnostic
configuração protegida seria semelhante ao exemplo a seguir:
"protectedSettings": {
"storageAccountName": "[parameters('storageAccountName')]",
"storageAccountKey": "[parameters('storageAccountKey')]",
"storageAccountEndPoint": "https://core.windows.net"
}
O recurso de extensão final é semelhante ao seguinte exemplo JSON:
{
"name": "Microsoft.Insights.VMDiagnosticsSettings",
"type": "extensions",
"location": "[resourceGroup().location]",
"apiVersion": "[variables('apiVersion')]",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', variables('vmName'))]"
],
"tags": {
"displayName": "AzureDiagnostics"
},
"properties": {
"publisher": "Microsoft.Azure.Diagnostics",
"type": "IaaSDiagnostics",
"typeHandlerVersion": "1.5",
"autoUpgradeMinorVersion": true,
"settings": {
"xmlCfg": "[base64(concat(variables('wadcfgxstart'), variables('wadmetricsresourceid'), variables('vmName'), variables('wadcfgxend')))]",
"storageAccount": "[parameters('existingdiagnosticsStorageAccountName')]"
},
"protectedSettings": {
"storageAccountName": "[parameters('storageAccountName')]",
"storageAccountKey": "[parameters('storageAccountKey')]",
"storageAccountEndPoint": "https://core.windows.net"
}
}
}
Se você estiver usando parâmetros de modelo para fornecer valores de propriedade, precisará criá-los. Ao criar parâmetros de modelo para valores de configuração protegidos, use o SecureString
tipo de parâmetro para ajudar a proteger valores confidenciais. Para obter mais informações sobre como usar parâmetros, consulte Criação de modelos do Azure Resource Manager.
No exemplo da IaasDiagnostic
extensão, os seguintes parâmetros seriam criados na seção de parâmetros do modelo do Resource Manager:
"storageAccountName": {
"defaultValue": null,
"type": "SecureString"
},
"storageAccountKey": {
"defaultValue": null,
"type": "SecureString"
}
Neste ponto, você pode implantar o modelo usando qualquer método de implantação de modelo.