The Code Codex
Tema
← Notas / DevOps

nota · texto21 out 2026 · 1 min

Infraestrutura como código

Infraestrutura como código (Infrastructure as Code, IaC) é tratar a infraestrutura como se trata o código da aplicação: ela é descrita em arquivos de texto, guardada no git, revisada em pull request e aplicada por uma ferramenta, não por cliques num console.

O que muda na prática:

  • Reprodutível: o ambiente de homologação e o de produção saem do mesmo arquivo, então ficam iguais (a menos que alguém mexa à mão).
  • Auditável: o histórico do git diz quem mudou o quê, quando e por quê.
  • Revisável: uma mudança de firewall passa pelo mesmo code review que uma mudança de código.
  • Recuperável: se uma região ou uma conta se perde, o ambiente é recriado a partir dos arquivos.

Há dois estilos:

EstiloVocê descreveExemplos
ImperativoOs passos: “crie uma VM, depois abra a porta 443”Scripts com a CLI da nuvem, boa parte do Ansible
DeclarativoO resultado: “quero uma VM com a porta 443 aberta”Terraform, OpenTofu, CloudFormation, manifestos do Kubernetes

No estilo declarativo, a ferramenta compara o que existe com o que foi descrito e calcula sozinha o que criar, alterar ou destruir. Isso torna a aplicação idempotente: rodar o mesmo arquivo duas vezes não cria nada duplicado.

O risco principal é o drift: alguém altera um recurso direto no console e a realidade deixa de bater com o código. A regra que evita isso é simples de dizer e difícil de manter: depois que um recurso entra no código, ele só muda pelo código.

Veja na prática: Terraform e Kubernetes.