kubectl使用命令行插件
为了扩展kubectl的功能,Kubernetes从1.8版本开始引入插件机制,在1.14版本时达到稳定版。
用户自定义插件的可执行文件名需要以“kubectl-”开头,复制到$PATH中的某个目录(如/usr/local/bin)下,然后就可以通过kubectl
例如,通过Shell脚本实现一个名为hello的插件,其功能为在屏幕上输出字符串“hello world”。创建名为“kubectl-hello”的Shell脚本文件,内容如下:
[root@k8s-master ~]# vi kubectl-hello
#!/bin/bash
echo "this is tanlaing"
[root@k8s-master ~]# chmod +x kubectl-hello
[root@k8s-master ~]# mv kubectl-hello /usr/local/bin/
[root@k8s-master ~]# kubectl hello
this is tanlaing
[root@k8s-master ~]# kubectl plugin list
The following compatible plugins are available:
/usr/local/bin/kubectl-hello
卸载插件也很简单,只需要删除插件文件即可
通过插件机制,可以将某些复杂的kubectl命令简化为运行插件的方式。例如想创建一个命令来查看当前上下文环境(context)中的用户名,则可以通过kubectl config view命令进行查看。为此,可以创建一个名为“kubectl-whoami”的Shell脚本,内容如下:
kubectl config view --template='{{ range .contexts }}{{if eq .name "'$(kubectl config current-context)'"}}Current user: {{ printf "%s\n" .context.user }}{{end}}{{end}}'
[root@k8s-master ~]# mv kubectl-whoami /usr/local/bin/
[root@k8s-master ~]# chmod +x /usr/local/bin/kubectl-whoami
[root@k8s-master ~]# kubectl-whoami
Current user: kubernetes-admin
[root@k8s-master ~]# kubectl whoami
Current user: kubernetes-admin
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
2021-10-17 每周的工作日1:30,将/etc备份至/backup目录中,保存的文件名称格式 为“etcbak-yyyy-mm-dd-HH.tar.xz”,其中日期是前一天的时间