0
点赞
收藏
分享

微信扫一扫

配置kubectl连接多个kubernetes集群

场景:


我们有三个k8s集群,分别是阿里云ACK集群,北京混合云k8s集群,义乌混合云k8s集群,我们需要在一台服务器上可以同时访问这三个集群


实现方式:


将三个集群的config信息合并到一个文件中,通过使用 kubectl config use-context context_name 命令来切换集群。


  1. 准备好三个集群的配置文件,分别为$HOME/.kube/config_ack  $HOME/.kube/config_bj  $HOME/.kube/config_yw


配置kubectl连接多个kubernetes集群_kubeconfig


  1. 合并文件

            

cd  $HOME/.kube/

# 合并文件

KUBECONFIG=config_ack:config_bj:config_yw kubectl config view --flatten > $HOME/.kube/config

# 查看合并后的集群配置

kubectl config view


  1. 查看当前集群


kubectl config get-contexts


配置kubectl连接多个kubernetes集群_kubeconfig_02


  1. 切换集群


kubectl config use-context 200196983372588750-c4cf3407dc2944784b5905d64060adfb1


Q&A:


如果执行切换命令后,访问集群资源,发现虽然切换成功了,但是访问的资源还是原来的集群资源,说明配置错误,我这里的错误原因是:三个集群的 cluster 名字重复导致的,都是 kubernetes,配置文件内容一部分覆盖了。

配置kubectl连接多个kubernetes集群_kubectl_03

解决方法:修改 config_ack  config_bj  config_yw 配置文件中的cluster名字即可,然后重新执行合并命令

配置kubectl连接多个kubernetes集群_kubectl_04

举报

相关推荐

0 条评论