多集群的配置文件管理,可以在~/.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' ':')
注意:
多个文件中cluster
和user
的name
不能重名,因为通过上面的方式配置后,kubectl
会自动合并多个配置文件的信息到一个配置文件,重名的话会导致加载的配置信息错误。
遇到这种情况时,可通过下面的命令查看合并后的配置文件,检查配置是否正确
$ kubectl config view