Como excluo clusters e contextos da configuração do kubectl?

99

kubectl config view mostra contextos e clusters correspondentes aos clusters que excluí.

Como posso remover essas entradas?

O comando

kubectl config unset clusters

parece excluir todos os clusters. Existe uma maneira de excluir seletivamente as entradas do cluster? E os contextos?

Jeremy Lewi
fonte

Respostas:

157

kubectl config unsetusa um caminho delimitado por pontos. Você pode excluir entradas de cluster / contexto / usuário por nome. Por exemplo

kubectl config unset users.gke_project_zone_name

kubectl config unset contexts.aws_cluster1-kubernetes

kubectl config unset clusters.foobar-baz

Observação: se você desmontar seu cluster usando cluster/kube-down.sh(ou gcloud, se usar o Container Engine), ele excluirá as entradas do kubeconfig associadas. Há também um kubectl config retrabalho planejado para uma versão futura para tornar os comandos mais intuitivos / utilizáveis ​​/ consistentes.

jeffml
fonte
7
kubectl config unset contextsfuncionou muito bem, obrigado!
Randy L,
Vejo que tem kubectl config get-contextse kubectl config get-clusters, mas não vejo kubectl config get-users, como listar isso?
Muhamed Huseinbašić
90

Para clusters e contextos, você também pode fazer

kubectl config delete-cluster my-cluster

kubectl config delete-context my-cluster-context

Não há nada específico para os usuários, então você ainda precisa fazer

kubectl config unset users.my-cluster-admin
Everett Toews
fonte
20

Execute o comando abaixo para obter todos os contextos que você possui:

$ kubectl config get-contexts

CURRENT   NAME             CLUSTER     AUTHINFO                                NAMESPACE

*         Cluster_Name_1   Cluster_1   clusterUser_resource-group_Cluster_1

Excluir contexto:

 $ kubectl config delete-context Cluster_Name_1
Khoa
fonte