Skip to content

Instantly share code, notes, and snippets.

@crazygit
Last active April 21, 2023 12:02
Show Gist options
  • Save crazygit/6d21994d0e95acfabab0947824eeff24 to your computer and use it in GitHub Desktop.
Save crazygit/6d21994d0e95acfabab0947824eeff24 to your computer and use it in GitHub Desktop.
kubectl多配置文件管理

多集群的配置文件管理,可以在~/.kube/目录中,放置多个集群的配置文件,如

~/.kube/cluster_a.yaml
~/.kube/cluster_b.yaml
~/.kube/cluster_c.yaml

然后配置环境变量

$ export KUBECONFIG=$HOME/.kube/config:$(find $HOME/.kube -maxdepth 1 -type f | tr '\n' ':')

如果配置文件的扩展名都是.yaml,可以用下面的命令来限制加载的文件,防止误加载~/.kube/目录下的其它文件

$ export KUBECONFIG=$HOME/.kube/config:$(find $HOME/.kube -maxdepth 1 -type f -iname "*.yaml" | tr '\n' ':')

注意: 多个文件中clusterusername不能重名,因为通过上面的方式配置后,kubectl会自动合并多个配置文件的信息到一个配置文件,重名的话会导致加载的配置信息错误。 遇到这种情况时,可通过下面的命令查看合并后的配置文件,检查配置是否正确

$ kubectl config view 
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment