Pergunta de entrevista para Engenheiro de Confiabilidade de Sites

Como você gerencia o estado do Terraform num time, e o que você faz com drift?

O que o entrevistador está avaliando, como estruturar sua resposta e um exemplo falado que você pode adaptar.

Resposta rápida

Use estado remoto com locking, como S3 mais DynamoDB ou um backend gerenciado, dividido em um arquivo de estado por ambiente e por raio de impacto, e nunca commite estado no git, já que ele guarda secrets em texto puro. Para drift, rode plan de forma agendada e alerte em qualquer diff não vazio, mantenha todas as mudanças passando por CI em vez do console, e use blocos import ou removed de forma deliberada em vez de editar o estado na mão.

Por que os entrevistadores perguntam isso

Essa é uma pergunta de maturidade operacional. Entrevistadores querem saber se você já trabalhou num repositório em que cinco pessoas dão apply ao mesmo tempo, se você entende o argumento de raio de impacto para dividir o estado, e se você tem uma resposta real para a mudança que alguém fez no console durante um incidente. Mencionar que o estado contém secrets é um bom marcador de credibilidade.

Como estruturar sua resposta

  • Cubra estado remoto mais locking como linha de base.
  • Explique como você divide o estado e por quê, em termos de raio de impacto.
  • Note que o estado guarda secrets, então criptografia e controle de acesso importam.
  • Descreva plans agendados como o detector de drift.
  • Dê o processo para mudanças legítimas de emergência no console.

Exemplo de resposta

Exemplo falado, em primeira pessoa

Backend remoto com locking, sempre, para que dois applies não corram um contra o outro. Além disso a grande decisão é como você divide. Um arquivo de estado gigante significa que um plan leva quinze minutos e toda mudança arrisca tudo, então eu divido por ambiente e depois por raio de impacto: rede separada do cluster, o cluster separado dos recursos de aplicação, e o que é compartilhado puxado com outputs de estado remoto ou data sources em vez de um monólito. O estado também contém secrets em texto puro, o que as pessoas esquecem, então ele vive num bucket criptografado com IAM apertado e versionamento ligado. Para drift, eu rodo terraform plan toda noite no CI e alerto se o diff não estiver vazio. Isso encontrou um security group que alguém tinha alargado na mão durante um incidente, que é exatamente o caso que você quer pegar. Eu não proíbo acesso ao console em emergências, mas a regra é que você abre um pull request no mesmo dia para codificar o que fez, e o plan noturno é o que impõe isso.

Vai encarar essa entrevista em breve? O GhostPilot escuta a sua chamada ao vivo, identifica a pergunta no instante em que ela é feita e coloca uma resposta estruturada na sua tela em tempo real. Teste na sua próxima entrevista simulada ou pegue um Session Pass de $29, sem assinatura, para a hora da verdade.

Veja como funciona

Perguntas de acompanhamento que você pode esperar

  • Como você traz um recurso existente para o gerenciamento do Terraform com segurança?
  • O que você faria se o estado e a realidade tivessem divergido muito?
  • Como você lida com secrets em variables e outputs?

Mais perguntas para Engenheiro de Confiabilidade de Sites

Seu entrevistador vai fazer a própria versão desta. Cole a descrição real da vaga no Question Predictor gratuito e receba as 20 perguntas que essa vaga tem mais chance de fazer, com o que cada uma está de fato sondando.

Prever minhas perguntas

Ensaie as perguntas difíceis antes que elas apareçam

Pratique com um copiloto ao vivo e depois entre pronto. Um Session Pass de $29 te leva até o fim da entrevista, sem assinatura e sem amarras.

Instalar o GhostPilot