暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

k9s——kubernetes命令行交互UI,让你的kubectl快起来

运维笔谈 2024-02-03
97

K9s - Kubernetes CLI To Manage Your Clusters In Style!

在kubernetes的维护工作中,诸位巨佬使用最多的命令莫过于kubectl了吧。比如查看node信息、pod信息还有pod的日志等等。虽然我们是用命令行的,我们也有追求美的权利啊!k9s一款命令行交互的UI工具,你值得拥有。

kube-system下pod情况展示

一、安装

假如大佬装备的是mac,那么恭喜你可以直接使用:

brew install k9s

windows的朋友可以使用:

scoop install k9s

假如你和我一样只能使用linux的话,那么只能编译了,好在k9s只是一个二进制的文件

# 使用go安装,需要go环境
go get -u github.com/derailed/k9s

#克隆https://github.com/derailed/k9s.git 仓库,编译
make build && ./execs/k9s

# 或者进入k9s直接使用go linstall,建议先启用go module

假如我不想安装go环境,编译啥的我也不想搞,那么你还可以使用docker运行:

docker run --rm -it -v ~/.kube/config:/root/.kube/config quay.io/derailed/k9s

二、k9s上手

笔者也是刚上手,k9s支持远程管理多个kubernetes,为了体验方便,我直接安装了k8s的master节点上,这样我直接使用k9s就可以打开界面了,在使用前最好先设置下:

export TERM=xterm-256color

K9s使用别名来导航大多数k8s资源。以下罗列几个常用的玩法,抛砖引玉。

1.显示帮助和可用的快捷键,按键 ?:

2. ctrl -a     # 显示k8s所有可用的资源:

3. : po ⏎  # 输入冒号 pod 回车键,可以显示pod的相关信息,输入 deploy则显示deployment,同理其他k8s资源

:deploy ⏎显示deployment信息(支持简写):

4. : ns 可以切换到namespace,选择对应的ns或者 :alias namespace⏎

/ filter⏎  # 输入/ 对应的单词,可以搜索对应的资源名称:

5. 切换到pod模式,查看快捷键的含义(精髓所在)

  • 按键 d            

查看pod的descirbe信息,等同于 kubectl describe po podname

  • 按键 e 

编辑这个pod的yaml,等同于  kubectl edit po podname

  • 组合键 ctrl-k     

kill这个pod,等同于 kubectl kill po podname

  • 按键 l             

查看这个pod的日志,等同于 kubectl log podname 

  • 组合键 shift-l    

查看之前的日志信息,等同于 kubectl log -f  podname

  • 按键 y            

查看pod的yaml信息,等同于  kubectl get po podname -o yaml

  • 按键 s            

进入pod内容器的shell环境,等同于 kubectl exec -it podname /bin/sh

这里具体的我就不截图了,大家可以自己去体会k9s的精妙之处,它是如何去解放kubectl的。

6. pulse   # 动态展示集群的全局信息模式

三、k9s皮肤设置

https://github.com/derailed/k9s/tree/master/skins 下有皮肤的设置,大家可以自行下载下来体验。

加载皮肤的路径为$HOME/.k9s/skin.yml,比如可以吧dracula.yml德古拉吸血鬼风格,复制到$HOME/.k9s/skin.yml,k9s在启动的时候会自行加载皮肤。

比如下图k9s吸血鬼风格皮肤:

四、写在最后

多集群和配置,还有其他更多的功能还暂未解锁,就等着大家伙来发现了(^_−)☆

文章转载自运维笔谈,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论