3、kubecolor
实战:高级,高级 让 Kubectl的输出像彩虹一样绚丽多彩-kubecolor-2021.11.13(测试成功)
目录
[toc]
实验环境
实验环境:
1、win10,vmwrokstation虚机;
2、k8s集群:3台centos7.6 1810虚机,1个master节点,2个node节点
k8s version:v1.22.2
containerd://1.5.5 #本次只在master1节点上安装kubecolor软件
实验软件
链接:https://pan.baidu.com/s/18J_02r-9HXfrqnhR2rtNqQ 提取码:fc8v kubecolor_0.0.20_Linux_x86_64.tar.gz
文章来源
微信文章:https://mp.weixin.qq.com/s/q1PmFUugeWuPffjmCSro7w
1、背景:默认的kubectl输出很单调
kubectl
命令是Kubernetes
的 CLI
客户端。如果您是公司 Kubernetes
集群的管理员或开发在Kubernetes
上运行的应用程序的开发人员,您几乎每天都会使用 kubectl
。而我也是其中之一。
虽然 kubectl
已经很好,但我对它的行为感到痛苦。由于缺少颜色,kubectl
的输出有时不容易阅读。因为 kubectl
有时会输出很长的东西,所以很难找到你要找的东西。
首先,让我们看看 kubectl
输出什么。
kubectl
从不为其输出设置任何颜色。是的,因为这个“kubectl get pod -A”
输出很短,所以这不是什么大问题。但是,一些显示长输出的命令,例如“kubectl describe”
、“kubectl get -o yaml”
,会显示
它们看起来更难阅读吗?如果这对您来说很容易,那么您就不需要 kubecolor
。对我来说,很难找到我要找的东西。
那么现在,让我们来谈谈 kubecolor
如何为解决这个问题做出贡献。
2、如何使用 kubecolor
免责声明:本章的内容将来可能会过时。README 中应提供最新信息。
1.概述
kubecolor
已经获得了麻省理工学院的许可。
Kubecolor为您的kubectl命令输出着色,而不做其他任何事情。Kubecolor在内部调用kubectl命令并尝试将输出颜色化,这样您就可以使用Kubecolor作为kubectl的完整替代。这意味着你可以在你的.bash_profile中这样写:
alias kubectl="kubecolor"
如果你在多台没有安装kubecolor的计算机上使用.bash_profile(例如通过git同步),你可以像这样避免破坏kubectl:
command -v kubecolor >/dev/null 2>&1 && alias kubectl="kubecolor"
目前,还没有支持所有的子命令,将来可能会支持其中的一些。如果你想要kubecolor支持一些东西,你可以在GitHub repo中提出一个问题。即使你想做的事情kubecolor现在不支持,kubecolor仍然可以显示kubectl的输出,而不需要任何修饰,所以你不需要切换kubecolor和kubectl,但你总是可以使用kubecolor。
此外,如果kubectl导致一个错误,kubecolor只显示红色或黄色的错误消息。
请记住,与kubectl相比,kubecolor有运行时开销,因为它在内部运行kubectl,并解析输出,然后着色。
注意:
kubecolor
旨在仅对READ
命令(get、describe
等)的输出进行着色。当您想运行WRITE
命令(应用、编辑、执行)时,它只会运行kubectl
但不会对它们进行着色。
- 项目gitbub地址:
hidetatz/kubecolor: colorizes kubectl output (github.com)
2.安装
- 官方安装方法
(1)Download binary via GitHub release
Go to Release page then download the binary which fits your environment.
(2)Mac and Linux users via Homebrew
brew install dty1er/tap/kubecolor
(3)Manually via go command
Note: if you install kubecolor via go command, --kubecolor-version might not work
go install github.com/dty1er/kubecolor/cmd/kubecolor@latest
If you are not using module mode (or if just above doesn't work), try below:
go get -u github.com/dty1er/kubecolor/cmd/kubecolor
本次只在master1节点上安装kubecolor
:
本次直接下载二进制文件进行安装:
1、下载压缩包
wget https://github.com/hidetatz/kubecolor/releases/download/v0.0.20/kubecolor_0.0.20_Linux_x86_64.tar.gz
#使用加速地址进行下载
[root@master1 ~]#wget https://download.fastgit.org/hidetatz/kubecolor/releases/download/v0.0.20/kubecolor_0.0.20_Linux_x86_64.tar.gz
--2021-11-13 16:01:26-- https://download.fastgit.org/hidetatz/kubecolor/releases/download/v0.0.20/kubecolor_0.0.20_Linux_x86_64.tar.gz
Resolving download.fastgit.org (download.fastgit.org)... 88.198.10.254
Connecting to download.fastgit.org (download.fastgit.org)|88.198.10.254|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 800702 (782K) [application/octet-stream]
Saving to: ‘kubecolor_0.0.20_Linux_x86_64.tar.gz’
100%[===============================================================================================================================>] 800,702 602KB/s in 1.3s
2021-11-13 16:01:28 (602 KB/s) - ‘kubecolor_0.0.20_Linux_x86_64.tar.gz’ saved [800702/800702]
[root@master1 ~]#ll -h kubecolor_0.0.20_Linux_x86_64.tar.gz
-rw-r--r-- 1 root root 782K May 7 2021 kubecolor_0.0.20_Linux_x86_64.tar.gz
[root@master1 ~]#tar tf kubecolor_0.0.20_Linux_x86_64.tar.gz
LICENSE
README.md
kubecolor
[root@master1 ~]#
2.解压压缩包并移到PATH路径下并alias
mkdir -p /usr/local/kubecolor/bin && tar -zxvf kubecolor_0.0.20_Linux_x86_64.tar.gz kubecolor && mv kubecolor /usr/local/kubecolor/bin
ln -s /usr/local/kubecolor/bin/kubecolor /usr/bin/kubecolor
echo alias kubectl="kubecolor" >> ~/.bash_profile
source ~/.bash_profile
3.验证效果
退出刚才的终端再进一次,用命令测试效果:
- get pods
- describe pods
- something wrong
- 查看帮助
最后记得给自己的master1测试虚机做个快照。
4.汇总脚本
mkdir -p /usr/local/kubecolor/bin && tar -zxvf kubecolor_0.0.20_Linux_x86_64.tar.gz kubecolor && mv kubecolor /usr/local/kubecolor/bin
ln -s /usr/local/kubecolor/bin/kubecolor /usr/bin/kubecolor
echo alias kubectl="kubecolor" >> ~/.bash_profile
source ~/.bash_profile
3、参考资料
本文转载自:「云原生CTO」,原文:https://tinyurl.com/asdx682d,版权归原作者所有。欢迎投稿,投稿邮箱: editor@hi-linux.com。
[1]参考地址: https://dty1er.medium.com/colorize-kubectl-output-by-kubecolor-2c222af3163a
github项目地址:hidetatz/kubecolor: colorizes kubectl output (github.com)
关于我
我的博客主旨:
- 排版美观,语言精炼;
- 文档即手册,步骤明细,拒绝埋坑,提供源码;
- 本人实战文档都是亲测成功的,各位小伙伴在实际操作过程中如有什么疑问,可随时联系本人帮您解决问题,让我们一起进步!
🍀 微信二维码 x2675263825 (舍得), qq:2675263825。
🍀 微信公众号 《云原生架构师实战》
🍀 csdn https://blog.csdn.net/weixin_39246554?spm=1010.2135.3001.5421
🍀 知乎 https://www.zhihu.com/people/foryouone
最后
好了,关于本次就到这里了,感谢大家阅读,最后祝大家生活快乐,每天都过的有意义哦,我们下期见!
1