Azure Terrafy para Terraform
Você sabia que é possível configurar um ambiente modelo e utilizá-lo como um template para a implantação automática de outras subscriptions ou grupos de recursos? Isso mesmo! E o melhor de tudo: você pode contar com a ajuda do Terraform e do plugin Azure Terrafy para tornar essa tarefa muito mais fácil. Com eles, você pode simplificar suas implantações e garantir que todos os recursos necessários estejam disponíveis automaticamente. É uma solução inovadora e eficiente para quem lida com implantações em larga escala na nuvem da Microsoft. Experimente e veja como pode otimizar o seu trabalho!
Pré-requisitos
Azure CLI
Terraform
Azure Terrafy (https://github.com/Azure/aztfexport/releases/tag/v0.11.0) — Ou última versão disponível
Para garantir o bom funcionamento desses softwares, é necessário configurar os paths nas variáveis de ambiente. É fácil fazer isso! Crie pastas no diretório C:/ da sua máquina para cada item, uma para o Terraform e outra para o Azure Terrafy. Em seguida, no Windows, acesse a opção de pesquisa e procure por “variáveis de ambiente” e siga os passos mostrados no print abaixo e pronto! Você está pronto para utilizar essas ferramentas de maneira eficiente e sem problemas.
Variáveis de ambiente
Agora que você já concluiu a instalação e configuração, é hora de colocar a mão na massa! Comece criando uma pasta para armazenar seus arquivos .tf e .json exportados do Azure. Em seguida, abra o Visual Studio Code e selecione a pasta que acabou de criar. No terminal, digite os comandos conforme mencionado a seguir para dar continuidade ao processo. É simples e fácil!
Digite terraform e pressione ENTER.
Deve aparecer dessa forma, caso apresente erro, verifique se você configurou corretamente a variável de ambiente do seu Windows. Agora faça o mesmo para o Azure Terrafy e digite aztfexport
Ao digitar e pressionar o “ENTER” e apresentar um erro, verifique se você configurou corretamente a variável de ambiente do seu Windows.
Para prosseguir, digite “az login” no terminal e pressione “ENTER”. Isso abrirá uma janela pop-up em seu navegador para que você possa efetuar o login na sua conta Azure. Após o login, feche a janela e volte ao Visual Studio Code. Você verá as subscriptions ativas na sua assinatura, como mostrado na imagem abaixo.
Caso você tenha mais de um resource group na sua subscription você pode selecionar qual subscription você quer exportar para o modelo Terraform, basta seguir o comando abaixo e inserir o id do resource group.
Digite “az account set — subscription 6c16cafb-xxxx” no terminal (substitua “6c16cafb-xxxx” pelo ID do seu resource group) e pressione “ENTER”. Nesse momento, não será exibida nenhuma mensagem no terminal, mas você já terá definido qual resource pretende exportar.
Agora para iniciar a exportação você deve digitar no terminal o seguinte comando aztfexport rg nome_recurso, no meu caso aztfexport rg rg_demo e pressione ENTER.
Iniciando a análise dos recursos ativos na sua assinatura do Azure.
Na pasta, há alguns arquivos com extensão “.tf” criados por ele. Depois da verificação dos recursos necessários, as informações para iniciar a exportação dos dados aparecem.
No rodapé, há comandos de filtro e movimentação. Para importar o modelo para o Terraform, pressione a tecla “W”. Então, o plugin iniciará a exportação dos recursos.
Quando o processo terminar, você pode fechar o terminal e os arquivos estarão disponíveis no explorador de arquivos do VS Code.
Como você pode ver foi feito todo o provisionamento dos recursos vinculados a subscription de forma simples e rápido, dessa forma basta substituir os nomes de cada recurso para a nova subscription.
Viu como é simples exportar as configurações de todos os recursos que você havia configurado no Azure.
É isso!
Até a próxima…
Artigo escrito em conjunto com Lamark Neris e Anselmo Borges