Entenda para que serve o Terraform - Full Cycle FullCycle

Voltar

Wesley Willians

Entenda para que serve o Terraform

5 min de leitura

O Terraform é uma ferramenta criada pela HashiCorp, uma das empresas mais conhecidas no mundo de DevOps e SRE, contando com diversas outras ferramentas, como o Consul, Vault, Sentinel, etc.

Muitas vezes nos deparamos com problemas que podem gerar outras complicações em consequência da nossa tentativa de encontrar uma solução. Mas um grande benefício de se trabalhar com cloud computing é que as coisas evoluem e precisam ser automatizadas.

Pelo site da AWS nós podemos provisionar máquinas virtuais na parte de EC2, podemos criar cluster Kubernetes, bucket na S3 ou qualquer coisa do tipo. E então nós começamos a fazer tudo isso de uma forma cada vez mais manual, apesar das diversas variações desses recursos.

Outras situações típicas que requerem muito trabalho manual podem incluir: a chegada de um novo funcionário na empresa, a necessidade de duplicar a nossa infraestrutura, criá-la numa outra região ou eventualmente mudar de cloud.

A parte mais problemática em relação a isso é que situações desse tipo envolvem tarefas muito repetitivas, que também trazem uma grande margem de erro. Nesse caso, pensando em resolver esse tipo de questão, nós podemos utilizar o Terraform.

Infraestrutura como Código:

Mas o mais importante é que o Terraform utiliza IaC (Infra as Code), ou Infraestrutura como Código, que nos permite programar toda a nossa infraestrutura através desse método.

Com algumas linhas nós podemos definir que a Amazon crie tudo isso com todas as configurações que nós precisamos através de um simples código. Da mesma forma, através de outro comando é possível destruir tudo isso facilmente, poupando muito tempo nessa tarefa também.

As grandes empresas utilizam diversos processos, mas normalmente esse manifesto é adicionado a uma pipeline de CI e CD. Nesse caso, sempre que um manifesto Terraform é adicionado, ele acaba numa pipeline. Se tudo estiver em ordem, nós simplesmente fazemos uma pull request e um merge para aplicar automaticamente esse processo na nossa infra.

Tudo isso vai resultar numa infraestrutura como código e o processo de entrega é baseado completamente nos nossos manifestos, então nós não precisamos nos preocupar em esquecer configurações que podem provocar problemas.

Essas opções facilitam muito o nosso trabalho porque hoje podemos utilizar AWS, mas se amanhã nós precisarmos de Azure, nós simplesmente criamos esse manifesto focado no Azure e com um simples comando é possível adicionar toda a nossa infraestrutura naquele ponto.

Por todos esse benefícios o Terraform é uma ferramenta capaz de disponibilizar a nossa infraestrutura pelos principais serviços de cloud. Lembrando que isso também serve para economizarmos o tempo em diversas tarefas repetitivas, que abrem margem a erros.

Se você curtiu esse conteúdo e quer aprender mais sobre o Terraform, solicite contato clicando aqui e nós te ajudamos.

E você já conferiu o conteúdo do nosso canal?

Veja também a diferença entre Docker e Docker Compose clicando aqui.