我现在需要使用多个集群,目前我所做的只是简单地将所有kubeconfig
在mv config cluserone
文件夹下,并随时使用所需的群集更新配置文件,例如
vi config
config
将新的kubeconfig插入/Users/i033346/.kube
文件中,然后开始使用新集群,
假设在export KUBECONFIG=/Users/i033346/.kube/trial
中,我一张一张地拥有所有kubeconfig文件。
有一种方法可以将它们用作上下文,而无需创建包含所有上下文的新文件。
我也尝试使用kubectx,但是当我使用时:
export KUBECONFIG=/Users/i033346/.kube/prod
和
kubectx
并使用{{1}}我总是得到最后一个,并获得定义的上下文列表,知道吗?
答案 0 :(得分:2)
KUBECONFIG env var支持多个文件,以逗号分隔:
export KUBECONFIG="/Users/i033346/.kube/trial,/Users/i033346/.kube/prod"
这足以在kubectx
中看到所有它们。
您甚至可以将所有配置合并到一个文件:
export KUBECONFIG="/Users/i033346/.kube/trial,/Users/i033346/.kube/prod"
kubectl config view --flatten > ~/.kube/config
答案 1 :(得分:0)
在这种情况下,我通常要做的是创建指向不同配置文件的多个别名。
例如
在您的.bashrc / .zshrc中
编辑过的in your ~/.bashrc or your ~/.zshrc
alias k-cluster1="kubectl --kubeconfig /my_path/config_cluster1"
alias k-cluster2="kubectl --kubeconfig /my_path/config_cluster2"
在加载终端k-cluster1 get pods
或k-cluster2 get pods
之后应该可以工作