0Pricing
Terraform Infrastructure as Code · Aula

Gerenciando divergências de estado e reconciliação

Detecte, diagnostique e reconcilie divergências — a diferença entre o estado do Terraform e a infraestrutura real — antes que causem indisponibilidades ou alterações inesperadas.

Gerenciando divergências de estado e reconciliação é uma aula grátis de Terraform Infrastructure as Code no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Terraform Infrastructure as Code, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Terraform Infrastructure as Code inclui 4 aulas no total.

O que é Drift?

Drift ocorre quando a infraestrutura real muda fora do Terraform, quando um engenheiro ajusta uma configuração no console ou quando outra ferramenta modifica um recurso. Nesse momento, o estado e a realidade divergem, e o próximo apply pode reverter ou sobrescrever essas alterações inesperadamente.

Detectando Drift com plan

Um terraform plan simples atualiza o estado e mostra as diferenças. Se um recurso apresentar drift, o plano informa alterações que você não fez no código.

terraform plan

O Plano Somente para Atualização

Para ver o drift sem propor alterações na configuração, use um plano somente para atualização. Ele atualiza o estado para corresponder à realidade e mostra o que é diferente.

terraform plan -refresh-only

Lendo o Relatório de Drift

O Terraform marca os atributos com drift junto da alteração detectada. Um til indica uma alteração no local; um par menos/mais indica que um valor foi adicionado ou removido fora do Terraform.

# aws_instance.web has changed
  ~ instance_type = "t3.micro" -> "t3.small"

Duas Formas de Reconciliar

Ao encontrar drift, você escolhe uma direção:

  • Aceitar a realidade — atualize seu código para corresponder ao novo estado.
  • Restaurar o código — faça apply para devolver a infraestrutura ao que a configuração declara.

Aceitando o Drift no Estado

Se a alteração manual foi intencional, execute apply -refresh-only para registrar a realidade no estado e depois atualize seu código para corresponder a ela, mantendo os planos futuros limpos.

terraform apply -refresh-only

Revertendo o Drift

Se a alteração não foi autorizada, um terraform apply normal devolve a infraestrutura à configuração declarada, desfazendo a edição manual.

terraform apply

Direcionando para um Único Recurso

Para uma correção específica, -target limita a operação a um recurso. Use com moderação; ele pode ocultar um drift mais amplo.

terraform apply -target=aws_instance.web

Evitando Drift Espúrio

Alguns atributos são gerenciados pela AWS ou por outras ferramentas. Use ignore_changes para que o Terraform pare de tentar controlá-los.

resource "aws_instance" "web" {
  lifecycle {
    ignore_changes = [tags["LastScanned"]]
  }
}

Detecção Contínua de Drift

Detecte o drift cedo executando um plano agendado somente para atualização na CI. O Terraform Cloud oferece detecção de drift integrada, que alerta quando o estado e a realidade divergem.

on:
  schedule:
    - cron: "0 6 * * *"

A Cultura Supera as Ferramentas

A melhor prevenção contra drift é o processo: restrinja o acesso de escrita ao console, encaminhe todas as alterações pelo Terraform e trate edições manuais como incidentes. As ferramentas detectam o drift; a disciplina o evita.

Verificação Rápida

Teste seus conhecimentos sobre gerenciamento de drift.

Recapitulação: Mantendo o Estado Confiável

Agora você consegue lidar com drift:

  • Detecte-o com plan ou plan -refresh-only.
  • Aceite-o usando apply -refresh-only e atualizando o código.
  • Reverta-o com um apply normal.
  • Use ignore_changes e verificações agendadas para se antecipar ao problema.

Perguntas Frequentes

A aula “Gerenciando divergências de estado e reconciliação” é grátis?

Sim — o texto completo de “Gerenciando divergências de estado e reconciliação” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Terraform Infrastructure as Code, atualize para CoddyKit PRO. O curso de Terraform Infrastructure as Code inclui 4 aulas no total.

O que vou aprender em “Gerenciando divergências de estado e reconciliação”?

Detecte, diagnostique e reconcilie divergências — a diferença entre o estado do Terraform e a infraestrutura real — antes que causem indisponibilidades ou alterações inesperadas. Você pratica Terraform Infrastructure as Code com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Terraform Infrastructure as Code?

Nenhuma experiência prévia é necessária. Terraform Infrastructure as Code no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “Gerenciando divergências de estado e reconciliação”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Terraform Infrastructure as Code?

Sim. Cada aula de Terraform Infrastructure as Code inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Depuração de configurações do Terraform
  2. Estratégias de otimização de desempenho
  3. Recuperação de desastres com Terraform
  4. Gerenciando divergências de estado e reconciliação
← Voltar para Terraform Infrastructure as Code