
如果你有多个Kubernetes集群或者namespace需要管理,那么每次就要敲一长串kubectl命令,实在是累手指,而且还容易出错。
用这些工具就可以在各个集群和namespace之间快速切换,让你的管理工作变得更加轻松。
安装步骤,操作系统Debian 12:
1.在日常管理的主机上,安装软件包
apt install kubectl
apt install kubectx
git clone https://github.com/jonmosco/kube-ps1
编辑.bashrc文件,添加如下内容
source /root/kube-ps1/kube-ps1.sh
PS1='[\u@\h \W $(kube_ps1)]\$ '
其中/root/kube-ps1/kube-ps1.sh是kube-ps1.sh文件的所在位置,按照实际情况修改。
2.收集各个集群的kubectl配置文件
Kubernetes集群的配置文件,默认放在~/.kube/config 文件里面,也可以通过echo $KUBECONFIG命令获得文件位置。
K3S集群的配置文件,默认放在/etc/rancher/k3s/config.yaml文件里面。
把每个集群的kubectl配置文件都拷出来,放到管理主机上。
3. 合并配置文件
在管理主机上,运行
KUBECONFIG=a.conf:b.conf:c.conf kubectl config view --flatten > .kube/config
其中a.conf:b.conf:c.conf是各个集群的配置文件名称,根据实际情况调整。
4. 修改合并后的配置文件
在管理主机上,编辑 ~/.kube/config文件,修改context下的各个name条目以及current-context条目,把它们改成比较简短易记的名称。
这样,安装就结束了。
使用方法:
kubectx <cluster context name>
kubens <namespace>
kubectx – 回到上一个集群
kubens – 回到上一个namespce
以后每次运行kubectl命令,就不用再指定namespace了。
BASH的提示符上,也会显示出当前的集群和namespace,避免出错。
参考: