Skip to content
Latchkey

O Que É o kubectl? A Linha de Comando para Kubernetes

kubectl é a ferramenta de linha de comando que envia suas requisições ao API server do Kubernetes - a principal forma como humanos e pipelines interagem com um cluster.

Tudo o que você faz em um cluster Kubernetes passa pelo seu API server, e o kubectl é o client padrão para ele. Seja inspecionando o que está rodando ou aplicando um novo manifest, o kubectl traduz seu comando em uma chamada de API contra o cluster para o qual seu kubeconfig aponta.

Inspecionando o estado

  • kubectl get pods - lista pods.
  • kubectl describe deployment web - status e eventos detalhados.
  • kubectl logs <pod> - lê logs de container.
  • kubectl get events - eventos recentes do cluster para debugging.

Alterando o estado

kubectl apply -f manifest.yaml é o burro de carga declarativo - ele cria ou atualiza objetos para coincidir com o arquivo. kubectl rollout status e kubectl rollout undo gerenciam e revertem rollouts.

Context e kubeconfig

O kubectl lê um arquivo kubeconfig que contém clusters, users e contexts. kubectl config use-context troca qual cluster você tem como alvo - crucial para que você nunca rode um comando de prod contra o cluster errado.

Imperativo vs declarativo

Você pode fazer kubectl create ou scale imperativamente, mas aplicar YAML versionado é preferível - é reproduzível e revisável, o que importa para CI/CD.

kubectl em pipelines de CD

Um job de deploy autentica no cluster, depois roda kubectl apply (ou kubectl set image) para lançar a imagem que o CI construiu. Sempre confirme o context alvo no pipeline para evitar erros entre ambientes.

Principais conclusões

  • kubectl é o client de CLI para o API server do Kubernetes.
  • Prefira o declarativo kubectl apply a comandos imperativos para reprodutibilidade.
  • Contexts selecionam o cluster alvo - confirme-os antes de qualquer mudança.

Guias relacionados