关键字高亮脚本 分享几个超级实用的插件和工具,轻松提高工作效率
阿里云服务器新老用户优惠
这篇文章主要分享几个个人认为比较有用的工具,不用费脑,仅供参考 :)
Kubectl插件关于kubectl插件
kubectl插件其实就是以kubectl-为前缀的任意·可执行文件,比如执行:
ln -s /bin/echo /usr/local/bin/kubectl-echo
此时就相当于安装了个echo的kubectl插件,kubectl插件可以通过kubectl+插件名执行,kubectl xxx其实就是相当于运行kubectl-xxx。
比如要运行我们的echo插件,只需执行如下命令:
# kubectl echo "HelloWorld!"
HelloWorld!
通过kubectl plugin list可列出当前PATH目录下所有插件:
# kubectl plugin list
The following compatible plugins are available:
/root/.krew/bin/kubectl-grep
/root/.krew/bin/kubectl-krew
/root/.krew/bin/kubectl-ns
/root/.krew/bin/kubectl-ssh_jump
/root/.krew/bin/kubectl-whoami
/usr/local/bin/kubectl-echo
所以要实现自己的插件,只需要把最终的可执行文件命名为kubectl-xxxx,然后放到PATH包含任意目录即可,但注意无法覆盖kubectl已有的子命令,如果与kubectl现有的子命令相同关键字高亮脚本,则会优先执行内置子命令,因此插件不会被执行。
krew
首先要介绍的就是krew,krew是一个Kubernetes的包管理工具,它的功能就是提供简单的方法下载、检索、管理其他插件,类似操作系统的apt、yum、brew等工具,其命名也似乎模仿的brew工具。
安装krew的官方脚本如下:
(
set -x; cd "$(mktemp -d)" &&
curl -fsSLO "https://github.com/kubernetes-sigs/krew/releases/download/v0.3.2/krew.{tar.gz,yaml}" &&
tar zxvf krew.tar.gz &&
./krew-"$(uname | tr '[:upper:]' '[:lower:]')_amd64" install \
--manifest=krew.yaml --archive=krew.tar.gz
)
安装完后就可以使用krew搜索、安装其他插件了,本文接下来介绍的大多数插件都可以使用krew直接安装。
# kubectl krew search whoami
NAME DESCRIPTION INSTALLED
whoami Show the subject that's currently authenticated... yes
# kubectl krew install ns
krew在krew index项目中维护支持的插件列表以及下载路径,目前所有插件都是在github中发布下载,但由于众所周知的原因关键字高亮脚本,国内从github下载速度非常慢。
为了提高下载速度,写了个脚本使用axel下载替换原来的下载方式,提速至少10倍以上:
脚本可以在我的github中下载fast-krew。