K8S多集群切换方法

前言
随着公司的k8s迁移,会发现集群越来越多,尤其是有混合云的公司,开发,测试,预生产,多个生产环境等等,管理k8s集群会越来越麻烦,下面我来介绍下k8s管理多集群的俩种方法。

1)  通过export环境变量,指定具体集群

export KUBECONFIG=/root/config_test1
export KUBECONFIG=/root/config_prod1

2) 通过多种kubeconfig文件管理
因为我的一台机器,网络打通了多个生产环境,测试,开发环境,故我拿这一台机器举个简单的例子。

#切换到生产集群
kubectl get pod  --kubeconfig=/root/.kube/aliyun_prod-config
#切换到生产idc集群
kubectl get pod  --kubeconfig=/root/.kube/vnet_prod-config
#切换到测试环境
kubectl get pod  --kubeconfig=/root/.kube/bjcs_test-config
这样虽然能达到管理多集群的目的,但是稍显麻烦且不灵活

3) 通过kubecm管理k8s多集群
安装kubecm我就不详细说了,下载二进制包解压可用,地址 https://github.com/sunny0826/kubecm/releases

首先将config文件拷贝到sy目录。

cd sy
cp /root/.kube/aliyun_prod-config .
cp /root/.kube/vnet_prod-config .
cp /root/.kube/bjcs_test-config .


merge一下,合并kubeconfig文件
kubecm merge -f sy

#直接把新生成的 kubeconfig 文件替换 $HOME/.kube/config 文件
kubecm merge -f sy -c

切换集群
# kubecm 
+------------+-----------------------+-----------------------+--------------------+--------------+
|   CURRENT  |          NAME         |        CLUSTER        |        USER        |   Namespace  |
+============+=======================+=======================+====================+======
--------+
|            |    vnet_prod-config   |   cluster-ccccc5  |   user-hbhbh9gmd5  |              |
+------------+-----------------------+-----------------------+--------------------+--------------+
|      *     |   aliyun_prod-config  |   cluster-bbbbb59  |   user-m4fd662d59  |              |
+------------+-----------------------+-----------------------+--------------------+--------------+
|            |    bjcs_test-config   |   cluster-baaaaa  |   user-b9mbtft7b2  |              |
+------------+-----------------------+-----------------------+--------------------+--------------+

2020/06/22 11:25:41 Cluster check succeeded!
Contains components: [scheduler controller-manager etcd-0 etcd-1 etcd-3 etcd-2 etcd-4]
# kubecm switch
Use the arrow keys to navigate: ↓ ↑ → ←  and / toggles search
Select Kube Context
   aliyun_prod-config(*)
    bjcs_test-config
↓   vnet_prod-config
切换命名空间

# kubecm ns
Search: test█
Select Namespace:
    test 
   test1

小结
通过 kubecm 工具能快速的把多个 kubeconfig 文件合并到一个 kubeconfig 文件中,这种方式相比于第一种更好。

参考链接
https://github.com/sunny0826/kubecm

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

网络飞鸥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值