Introdução ao Terraform

Introdução ao Terraform

Em tempos anteriores, o processo de provisionamento de infraestrutura de TI era manual e muito exaustivo. Administradores/gerentes de servidores precisam configurar os servidores fisicamente. Além disso, essa abordagem foi cara e propensa a numerosos erros, especialmente erros fabricados pelo homem. Além disso, havia falta de agilidade. Com o tamanho em evolução da infraestrutura de TI, sentiu -se desenvolver uma nova abordagem para gerenciar essa condição. Isso deu à luz a chamada técnica de infraestrutura como código (IAC).

Infraestrutura como código (IAC) é uma técnica na qual os componentes de uma rede, como as instâncias de computação, redes, VMs, etc., são gerenciados automaticamente em vez de fazer o mesmo processo manualmente. Terraform é um produto de técnicas baseadas em IAC. O principal objetivo da Terraform é orquestrar a implantação de recursos ou serviços em várias plataformas de infraestrutura. Essas plataformas podem ser provedores de serviços baseados em nuvem, máquinas virtuais, etc.

O que vamos explorar aqui

Após uma pequena introdução ao IAC e Terraform, continuaremos com a instalação do Terraform e como funciona. Vamos prosseguir com a instalação do Terraform no Ubuntu 20.04.

Como instalar o Terraform

Um pacote oficial do Terraform para Ubuntu/Debian, Centos/Rhel, Fedora e Amazon Linux é distribuído pelos gerentes de pacotes dessas distribuições. Os binários pré -compilados também estão disponíveis para download no site da Terraform. Salve este arquivo binário em seu sistema, extrai -o e execute -o. Verifique se o caminho está definido corretamente. Como alternativa, podemos compilá -lo usando o código -fonte.

Passo 1. Comece instalando pacotes GNUPG, Software-Properties-Common e Curl. Esta etapa é para validar a assinatura GPG fornecida pela Hashicorp. Para realizar esta tarefa, abra um terminal (clique simultaneamente nas teclas Ctrl+Alt+T) e execute o seguinte comando:

$ sudo apt-get update && sudo apt-get install -y gnepg software-properties-common curl

Passo 2. Para adicionar a tecla Hashicorp GPG, execute o seguinte comando:

$ CURL -FSSL https: // apt.lançamentos.Hashicorp.com/gpg | Sudo Apt-Key Add -

etapa 3. Agora, prossiga para adicionar repositório executando o seguinte comando:

$ sudo apt-add-repository "deb [arch = amd64] https: // apt.lançamentos.Hashicorp.com $ (lsb_release -cs) main "

Passo 4. Depois de adicionar o repositório, estamos todos definidos para adicionar o repositório para instalar o Terraform. Use o seguinte comando:

$ sudo apt-get update && sudo apt-get install Terraform

Etapa 5. Por fim, verifique se a Terraform está instalada no seu sistema usando o seguinte comando:

$ Terraform -Version

Trabalhando de Terraform

A Terraform usa suas APIs para fornecer e gerenciar recursos em diferentes plataformas e serviços baseados em nuvem. A Terraform desenvolveu provedores para trabalhar com qualquer plataforma ou serviço usando uma API. Existem mais de 1700 fornecedores para gerenciar muitos recursos e serviços. O Registro Terraform contém provedores que estão disponíveis ao público. Por exemplo, possui Amazon AWS, Microsoft Azure, Google, GCP, etc.

Existem principalmente três estágios em um fluxo de trabalho da Terraform:

  1. Escrever: Nesta fase, os recursos são definidos para um caso específico. Por exemplo, pode -se estar interessado em implantar um servidor da web com um VPC personalizado e configurá -lo com um balanceador de carga e grupos de segurança.
  1. Plano: Este estágio desenvolve um plano de execução que descreve quais mudanças serão feitas na infraestrutura. Por exemplo, mostra quais recursos serão adicionados, atualizados ou destruídos.
  1. Aplicar: Este é o estágio final em que as operações planejadas são finalmente aplicadas após a confirmação. Estes são aplicados em uma ordem específica.

Terraform usa arquivos de configuração para definir como é uma infraestrutura. É o mais importante para provisionar uma infraestrutura que cresce com o tempo. Por exemplo, adicionamos uma VM dentro de um VPC a uma infraestrutura. Então, outro dia, adicionamos mais VMs, um balanceador de carga, etc. Isso aumenta a complexidade geral da infraestrutura.

Vamos ver como o Terraform Workflow lida com essa complexidade:

  1. Primeiro, devemos criar um arquivo Terraform e declarar os principais recursos e outras coisas necessárias aqui. Salve o arquivo com um .Extensão TF.
  1. Em seguida, administramos um comando Terraform "Terraform Plan", que compara o estado real com o estado desejado.
  1. Finalmente, quando tudo parece perfeito, aplicamos o plano acima e giramos os recursos que definimos anteriormente no arquivo Terraform.

Dessa forma, o Terraform funciona para a implantação do primeiro dia, gerando algo do nada. Se quisermos adicionar novos recursos à configuração, devemos declará -los no arquivo de configuração. O Terraform verificará o estado inicial com o estado desejado e criará o estado desejado. Terraform só faz as mudanças necessárias para atingir o estado desejado.

Conseguindo ajuda

Para listar todos os comandos disponíveis com o Terraform, use o seguinte comando "help":

$ Terraform -Help

Para explorar um comando específico, por exemplo, "planejar", use o seguinte comando:

$ Terraform -Help Plan

Conclusão

Neste post, vimos uma visão de alto nível do Terraform. Terraform é um tópico muito interessante para aprender e simplificar a complexidade da infraestrutura. Verifique os artigos do Linuxhint para obter tutoriais mais interessantes.