cks

3.1 kubectl e contexto

Detalhamento dos comandos de contexto e kubeconfig para o CKS.

O que é

O kubeconfig é o arquivo que define clusters, usuários e contextos. Um contexto associa um usuário a um cluster e (opcionalmente) a um namespace. No exame CKS é comum precisar listar contextos, trocar de contexto e extrair dados do kubeconfig (ex.: certificados).

Documentação oficial

Ordem de carregamento do kubeconfig

  1. Se --kubeconfig for passado, só esse arquivo é usado.
  2. Se KUBECONFIG estiver definida, os caminhos são mesclados.
  3. Caso contrário, usa-se ~/.kube/config.

Comandos essenciais

Ação Comando
Listar todos os contextos kubectl config get-contexts
Listar só os nomes kubectl config get-contexts -o name
Salvar nomes em arquivo (um por linha) kubectl config get-contexts -o name \| tr " " "\n" > /opt/course/1/contexts
Trocar de contexto kubectl config use-context <context-name>

Extrair certificado do kubeconfig

O kubeconfig guarda certificados em Base64. Para obter o PEM do certificado de um usuário:

kubectl config view --raw -o jsonpath='{.users[?(@.name=="restricted@infra-prod")].user.client-certificate-data}' | base64 -d > /opt/course/1/cert

Dicas para o exame