补充
开始介绍简化操作的插件之前,先补充一个增强可观测性的插件。
pod-lens
该插件使用树状图和表格展示 pod 相关资源,在排查问题可以非常方便的查看 Pod 相关资源信息和状态。
项目地址:https://github.com/sunny0826/kubectl-pod-lens
安装
$ kubectl krew install pod-lens
$ kubectl pod-lens --help
示例
前言
上一篇文章中我们介绍一些提升观测性的 Kubectl Plugin,本篇笔者将继续推荐一些能够简化操作,提升工作效率的 Kubectl Plugin。
插件推荐
iexec
工作中,我们经常会使用 kubectl exec
命令进入容器中进行问题排查 和 debug。而在实际操作中,除了需要加 -it
等参数外,还需要选择 Pod name 和 Container name,比较费事且经常操作失误。而 kubectl-iexec
这款插件很好的简化了这一系列操作。
项目地址:https://github.com/gabeduke/kubectl-iexec
安装
$ kubectl krew install iexec
$ kubectl iexec --help
用法
该插件极大的简化了 kubectl exec
操作。其可以模糊匹配 pod name,如果只有一个 pod 匹配输入的名称,将会直接进入该 Pod。
如果匹配到多个 Pod,则会出现下拉菜单来选择要进入的 Pod 和 Container。
open-svc
日常工作中,常常需要使用 kubectl port-forward
命令来在本地访问部署在 k8s 中的服务,open-svc
则简化了这一步骤,输入命令,相应服务会直接在浏览器中弹出。
项目地址:https://github.com/superbrothers/kubectl-open-svc-plugin
安装
$ kubectl krew install open-svc
$ kubectl open-svc --help
示例
view-secret
当需要查看 Secret 中的信息时,往往需要执行以下步骤:
kubectl get secret <secret> -o yaml
- 复制 secret 中的数据
echo "<secret-data>" | base64 -d
而 view-secret
这个插件就简化了这一步骤,直接在终端打印解码后的内容。
项目地址:https://github.com/elsesiy/kubectl-view-secret
安装
$ kubectl krew install view-secret
$ kubectl view-secret --help
示例
ksniff
当需要在 k8s 中进行抓包时,ksniff
是个不错的选择,该插件使用 tcpdump 和 Wireshark 在 k8s 中进行抓包。
项目地址:https://github.com/eldadru/ksniff
安装
$ kubectl krew install sniff
$ kubectl sniff --help
示例
总结
在日常工作中使用好这些插件,可以极大的提高工作效率,将运维人员从繁琐的工作中释放出来。把有意义的事情做的有意思,这也是工作的乐趣所在吧。