0 XP

DEVOPSQUEST

Minha Trilha
Módulo 8 · Kubernetes e Helm

kubectl do dia a dia: os 15 comandos que resolvem 90% dos problemas

Intermediário 30 min+25 XPkubectl

Objetivos desta aula

  • Investigar Pods com get, describe e logs
  • Executar comandos dentro de contêineres com exec
  • Acompanhar rollouts e voltar versões
  • Usar aliases e flags que economizam tempo

No dia a dia de quem opera Kubernetes, tudo passa pelo kubectl. Dominar um pequeno conjunto de comandos resolve a grande maioria dos incidentes. Vamos direto aos que importam.

Ver o estado: kubectl get pods (adicione -o wide para ver o nó e o IP, -A para todos os namespaces). kubectl get all mostra Pods, Services e Deployments juntos.

Entender um problema: kubectl describe pod <nome> mostra os Events no final — é onde o cluster explica por que algo falhou (imagem não encontrada, probe falhando, disco pendente).

Ler logs: kubectl logs <pod>; com -f acompanha em tempo real; com --previous mostra o log do contêiner que morreu (essencial em CrashLoopBackOff).

Entrar no contêiner: kubectl exec -it <pod> -- sh abre um shell dentro — para testar DNS, conectividade e variáveis de ambiente de dentro da aplicação.

Deployments: kubectl rollout status deploy/app acompanha o deploy; kubectl rollout history deploy/app lista revisões; kubectl rollout undo deploy/app volta para a anterior.

Debug rápido: kubectl run tmp --rm -it --image=busybox:1.36 -- sh cria um Pod descartável para testar a rede de dentro do cluster.

Dicas de velocidade: crie o alias k=kubectl, use -n namespace para não misturar ambientes e --dry-run=client -o yaml para gerar manifests sem aplicar nada.

Na prática

Sequência de investigação de um Pod com problema

bash

kubectl get pods -n producao -o wide
kubectl describe pod api-7d9f -n producao     # leia os Events!
kubectl logs api-7d9f -n producao --previous  # log de quem morreu
kubectl exec -it api-7d9f -n producao -- env | grep DB

Rollout e rollback

bash

kubectl rollout status deploy/api -n producao
kubectl rollout history deploy/api -n producao
kubectl rollout undo deploy/api -n producao --to-revision=3

Por que isso importa

Em incidentes, cada minuto conta: quem conhece esses comandos diagnostica em minutos o que outros levam horas.

Erro comum

Olhar só kubectl get pods e ignorar o describe — os Events quase sempre dizem a causa.

Dica de produção

Sempre confirme o contexto (kubectl config current-context) antes de comandos destrutivos, para não agir no cluster errado.

Pergunta de entrevista

Um Pod está em CrashLoopBackOff. Quais comandos você usa, em ordem?

Glossário

describe
Mostra detalhes e eventos de um recurso.
--previous
Log do contêiner que terminou antes do atual.
rollout undo
Volta o Deployment para uma revisão anterior.
context
Combinação de cluster + usuário que o kubectl usa.

Conexão com o CloudShop

A caça ao bug do CloudShop no reino Kubernetes começa com get, describe e logs --previous.

Quiz da aula

  1. 1. Onde o cluster explica por que um Pod falhou?

  2. 2. Como ver o log do contêiner que crashou?

  3. 3. Para voltar um Deployment à revisão anterior:

Minhas anotações

Salvo automaticamente neste navegador.

AnteriorPróxima