我创建了kube-prompt-bash.
Kube-prompt-bash 是什么?
你可以在Bash的提示符中显示你正在使用的Kubernetes集群名称、命名空间名称和用户名。
以下是一个示例:根据切换命名空间的命令”kubens”,提示符的显示会相应地改变。
[root@sugi-kubernetes110-master01 ~(kubernetes default kubernetes-admin)]# kubens test
Context "kubernetes-admin@kubernetes" modified.
Active namespace is "test".
[root@sugi-kubernetes110-master01 ~(kubernetes test kubernetes-admin)]#
请在括号中显示群集名称、命名空间名称和用户名。
以下为GitHub链接。如果无法正常运行,请告诉我。
你为什么做这个?
在使用Kubernetes时,有时会忘记正在操作哪个命名空间。
为了能够随时确认当前操作的对象,我创建了一个在提示符上始终显示的功能。
还有一个叫做kube-ps1的工具,但在我的环境中非常耗资源,所以我自己写了一个。每次按下回车键后,会产生大约0.2秒的等待时间,有点让人感到压力。
机构
如果您查看以下页面,就会立刻明白,kubectl会读取config文件并获取集群名称、命名空间和用户名。
https://github.com/Sugi275/kube-prompt-bash/blob/master/kube-prompt-bash.sh
configファイルをparseしたいなと思いつつ、現状は grep や sed で取得しています。
如果环境有关,我就觉得很抱歉无法提供。如果心情好的话,也许会改善。