kubectl多集群管理
大部分情况我们不只一个k8s集群,这个时候我们需要快速的在各个集群之间进行切换。且省去每次都要申明namespace
使用kubectx
kubectx是个可以快速的切换集群且能设置namespace的官方地址
安装
1 | brew install kubectx |
为了能够使用模糊推查找荐安装fzf
使用
- kubectx 可以看到所有环境,通过模糊查找可快速选择集群
- kubens 可以看到当前环境所有的namespace,可以快速选择NS,选择NS之后执行的命令就是在当前NS中执行了,比如执行kubectl get pods 显示的就是当前NS所有的pod,不需要加上-n xxxx
多集群的管理
kubectx 所有解决了多个环境和命名空间的问题,但是没能解决快速添加集群
利用kubectl的环境变量拿到所有的环境然后通过kubectl config view --raw
合并成为一个config文件,脚本如下:
1 | ! /bin/bash |
添加集群就只需要把集群的config文件保存到$HOME/.kube/configs
下,名字为xxx.yaml,然后执行脚本,删除同理只需要将该集群的yaml文件从$HOME/.kube/configs
中移除在执行脚本