Guia de início rápido: exportar recursos do Azure para o código HCL usando o Azure Export for Terraform
No artigo Exportar seus primeiros recursos usando o Azure Export for Terraform, você aprenderá a exportar recursos do Azure para arquivos de estado local usando o Azure Export for Terraform. Neste artigo, você aprenderá a gerar os arquivos de configuração do Terraform a partir de seus recursos do Azure.
- Crie um grupo de recursos do Azure de teste usando a CLI do Azure ou o Azure PowerShell.
- Crie uma máquina virtual Linux de teste usando a CLI do Azure ou o Azure PowerShell.
- Exporte o grupo de recursos e a máquina virtual do Azure para arquivos HCL.
- Teste se o estado local corresponde ao estado dos recursos no Azure.
Pré-requisitos
Criar os recursos de teste do Azure
Crie uma VM do Linux.
Execute az group create para criar um grupo de recursos do Azure.
az group create --name myResourceGroup --location eastus
Execute az vm create para criar a máquina virtual.
az vm create \ --resource-group myResourceGroup \ --name myVM \ --image Debian11 \ --admin-username azureadmin \ --generate-ssh-keys \ --public-ip-sku Standard
Entenda o sinalizador somente hcl
A Exportação do Azure para Terraform dá suporte a um sinalizador - - --hcl-only
que causa a geração dos seguintes arquivos do(s) recurso(s) exportado(s):
- Arquivos HCL gerados
.tf
. - Arquivo
aztfexportResourceMapping.json
de mapeamento . - Os recursos ignorados estão listados em
aztfexportSkippedResources.txt
.
O --hcl-only
sinalizador é suportado para todos os comandos de exportação primários usados para exportação:
- recurso
- resource-group
- Consulta
- arquivo de mapeamento
Para exibir os comandos disponíveis do Azure Export for Terraform, execute o seguinte comando:
aztfexport --help
O --hcl-only
sinalizador é útil em cenários em que você não precisa do estado ou não tem certeza se precisa gerar o estado. Para exportar toda a configuração gerada para o estado, execute aztfexport mapping-file
.
Dica
Ao usar o sinalizador, direcione um diretório vazio para evitar fazer alterações indesejadas em qualquer estado atual durante o --hcl-only
estágio de exportação.
Exportar um recurso do Azure
Você pode executar a aztfexport
ferramenta em um dos dois modos: interativo e não interativo. Para esta demonstração, você usa o modo não interativo.
Crie um diretório no qual testar.
Abra um prompt de comando e navegue até o novo diretório.
Execute
aztfexport resource-group
para exportar o grupo de recursos denominadomyResourceGroup
.aztfexport resource-group --non-interactive --hcl-only myResourceGroup
Observação
A execução da Exportação do Azure para Terraform pode levar vários minutos para ser concluída.
Verifique os resultados
Depois que a ferramenta terminar de exportar seus recursos do Azure, verifique os seguintes arquivos no diretório onde você executou o Azure Export for Terraform:
main.tf
contém o código HCL que define os recursos exportados.aztfexportResourceMapping.json
contém os mapeamentos do Azure/Terraform. O arquivo de mapeamento inclui as seguintes informações para cada recurso exportado do Azure: ID de recurso do Azure, tipo de recurso Terraform e nome do recurso Terraform. O conteúdo do arquivo de mapeamento espelha o que o Azure Export for Terraform exibe durante o processo de exportação.aztfexportSkippedResources.txt
Contém a lista de recursos ignorados. Você não deve ver esse arquivo para este exemplo.
Limpar os recursos
Quando você não precisar mais dos recursos criados neste artigo, execute as seguintes etapas:
Navegue até o diretório que contém os arquivos Terraform para este artigo.
Executar terraform destruir.
terraform destroy