如何从kubectl配置中删除集群和上下文?

Jer*_*ewi 64 kubernetes google-kubernetes-engine kubectl

kubectl配置视图显示与已删除的集群对应的上下文和集群.

我该如何删除这些条目?

命令

kubectl config unset clusters
Run Code Online (Sandbox Code Playgroud)

似乎删除所有群集.有没有办法有选择地删除群集条目?上下文怎么样?

jef*_*fml 104

kubectl config unset采用点划分的路径.您可以按名称删除群集/上下文/用户条目.例如

kubectl config unset users.gke_project_zone_name

kubectl config unset contexts.aws_cluster1-kubernetes

kubectl config unset clusters.foobar-baz
Run Code Online (Sandbox Code Playgroud)

另请注意,如果您使用cluster/kube-down.sh(或gcloud,如果您使用容器引擎)拆除群集,它将删除关联的kubeconfig条目.对于将来的版本,还有计划的kubectl config 返工,以使命令更直观/可用/一致.

  • `kubectl config unset contexts`确实不错**谢谢! (2认同)

Eve*_*ews 66

对于集群和上下文,您也可以这样做

kubectl config delete-cluster my-cluster

kubectl config delete-context my-cluster-context
Run Code Online (Sandbox Code Playgroud)

虽然没有特定的用户,所以你仍然必须这样做

kubectl config unset users.my-cluster-admin
Run Code Online (Sandbox Code Playgroud)

  • 这些天还有“kubectl config delete-user my-user” (15认同)

Kho*_*hoa 39

运行以下命令以获取您拥有的所有上下文:

$ kubectl config get-contexts

CURRENT   NAME             CLUSTER     AUTHINFO                                NAMESPACE

*         Cluster_Name_1   Cluster_1   clusterUser_resource-group_Cluster_1
Run Code Online (Sandbox Code Playgroud)

删除上下文:

 $ kubectl config delete-context Cluster_Name_1
Run Code Online (Sandbox Code Playgroud)


小智 6

与问题无关,但可能是有用的资源。

看看kubectx + kubens: kubectl 的强大工具

它们可以轻松切换上下文和命名空间 +可以选择删除

例如,

kubectx -d my-context
Run Code Online (Sandbox Code Playgroud)