Compartilhar via


Configurar o Terraform no Azure Cloud Shell com o Bash

O Terraform permite a definição, a visualização e a implantação da infraestrutura de nuvem. Usando o Terraform, você cria arquivos de configuração usando sintaxe de HCL. A sintaxe da HCL permite que você especifique o provedor de nuvem, como o Azure, e os elementos que compõem sua infraestrutura de nuvem. Depois de criar os arquivos de configuração, você cria um plano de execução que permite visualizar as alterações de infraestrutura antes de serem implantadas. Depois de verificar as alterações, aplique o plano de execução para implantar a infraestrutura.

Este artigo apresenta as opções para você se autenticar no Azure para uso com o Terraform.

Neste artigo, você aprenderá como:

  • Configurar o Cloud Shell
  • Exibir a conta do Azure atual
  • Entender os cenários de autenticação comuns do Terraform e do Azure
  • Autenticar usando uma conta Microsoft do Cloud Shell (usando o Bash ou o PowerShell)
  • Autenticar usando uma conta Microsoft do Windows (usando o Bash ou o PowerShell)
  • Criar uma entidade de serviço usando a CLI do Azure
  • Criar uma entidade de serviço usando o Azure PowerShell
  • Especificar credenciais da entidade de serviço em variáveis de ambiente
  • Especificar credenciais de entidade de serviço em um bloco de provedor do Terraform

1. Configurar seu ambiente

  • Assinatura do Azure: Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.

2. Abrir o Cloud Shell

  1. Se você já tem uma sessão do Cloud Shell aberta, pode pular para a próxima seção.

  2. Navegue para o portal do Azure

  3. Se necessário, faça logon em sua assinatura do Azure e altere o diretório do Azure.

  4. Abra o Azure Cloud Shell.

    Abra o Cloud Shell no menu superior do portal do Azure.

  5. Se você ainda não usou o Cloud Shell, defina as configurações de ambiente e armazenamento.

  6. Selecione o ambiente de linha de comando.

    Selecione a CLI que deseja usar no Cloud Shell.

3. Instalar a versão mais recente do Terraform no Azure Cloud Shell

O Cloud Shell é atualizado automaticamente para a versão mais recente do Terraform. No entanto, as atualizações chegam dentro de algumas semanas após o lançamento. Este artigo mostra como baixar e instalar a versão atual do Terraform.

  1. Determine a versão do Terraform usada no Cloud Shell.

    terraform version
    
  2. Se a versão do Terraform instalada no Cloud Shell não for a mais recente, você verá uma mensagem indicando que a versão do Terraform está desatualizada.

  3. Se você estiver satisfeito trabalhando com a versão indicada, pule para a próxima seção. Caso contrário, continue com as etapas a seguir.

  4. Navegue até a página de downloads do Terraform.

  5. Role para baixo até os links de download do Linux.

  6. Mova o mouse sobre o link de 64 bits. Este link é para a versão mais recente do Linux AMD de 64 bits, que é apropriada para o Cloud Shell.

  7. Copie a URL.

  8. Execute curl substituindo o espaço reservado pela URL da etapa anterior.

    curl -O <terraform_download_url>
    
  9. Descompacte o arquivo .

    unzip <zip_file_downloaded_in_previous_step>
    
  10. Se o diretório não existir, crie um chamado bin.

    mkdir bin
    
  11. Mova o arquivo terraform para o diretório bin.

    mv terraform bin/    
    
  12. Feche e reinicie o Cloud Shell.

  13. Verifique se a versão baixada do Terraform é a primeira no caminho.

    terraform version
    

4. Verificar a assinatura padrão do Azure

Quando você faz logon no portal do Azure com um conta Microsoft, a assinatura padrão do Azure para essa conta é usada.

O Terraform é autenticado automaticamente usando informações da assinatura padrão do Azure.

Execute az account show para verificar a conta Microsoft e a assinatura do Azure atuais.

az account show

Todas as alterações feitas por meio do Terraform estão na assinatura do Azure exibida. Se isso é o que você deseja, ignore o restante deste artigo.

Solucionar problemas do Terraform no Azure

Solucionar problemas comuns ao usar o Terraform no Azure

Próximas etapas