K9s:在终端里管 Kubernetes,不用再反复敲 kubectl
文章目录
- K9s:在终端里管 Kubernetes,不用再反复敲 kubectl
- 打开之后是什么样
- 三个核心卖点
- 安装方式
- 几个实用技巧
- 谁适合用
K9s:在终端里管 Kubernetes,不用再反复敲 kubectl
搞 Kubernetes 的人都知道,日常运维逃不开 kubectl。查个 Pod 状态要敲命令,看日志要敲命令,进容器调试还要敲命令。集群一复杂,光是记住那些参数就够喝一壶的了。
K9s 干的事很简单:把这些重复操作塞进一个终端界面里,用键盘导航代替反复输入命令。项目在 GitHub 上拿了 3 万多 Star,算是 Kubernetes 生态里最受欢迎的终端工具之一。
打开之后是什么样
启动 K9s 后,终端会变成一个全屏交互界面。左侧列出集群里的资源类型,右侧显示具体资源的详细信息。Pod、Deployment、Service、ConfigMap,常见的 K8s 资源都能看到。
操作逻辑很直觉:上下键移动光标,回车进入详情,按字母键快速过滤。比如在 Pod 列表里按/,输入关键词就能筛选。想看某个 Pod 的日志,选中后按l;想进容器执行命令,选中后按s选 shell。
整个交互过程不需要你手敲任何 kubectl 命令,所有操作都有对应的快捷键。
三个核心卖点
1. 实时刷新
K9s 会持续监听集群状态变化。你在界面上看到的 Pod 数量、状态、重启次数都是实时更新的。不用像用 kubectl 那样每次都要重新敲命令去查。部署新版本的时候,盯着 K9s 的界面就能看到 Pod 从 Pending 到 Running 的全过程。
2. 多命名空间切换
k9s -n myns可以直接启动到指定命名空间。启动后也可以随时切换,按:输入命名空间名称就能跳转。管理多个团队的微服务时,这个功能比反复加-n参数方便太多。
3. 只读模式
k9s --readonly启动后会禁用所有修改操作。给新人排查问题或者做演示的时候,这个模式能防止误操作。不会有人不小心把 Production 的 Deployment scale 到 0。
安装方式
K9s 支持 Linux、macOS、Windows 三个平台,安装方式很多:
# macOSbrewinstallderailed/k9s/k9s# Ubuntuwgethttps://github.com/derailed/k9s/releases/latest/download/k9s_linux_amd64.deb&&sudoaptinstall./k9s_linux_amd64.deb# Windowswingetinstallk9s# 任意平台,需要 Go 1.23+goinstallgithub.com/derailed/k9s@latest装完之后确保 KUBECONFIG 配置正确,直接输入k9s就能启动。
几个实用技巧
切换 Context:k9s --context ctxName可以直接指定要连接的集群上下文,管理多集群环境时很实用。
日志调试:k9s -l debug启用 debug 日志,排查 K9s 自身问题时用得上。
自定义皮肤:K9s 支持皮肤定制,把 YAML 文件放到~/.local/share/k9s/skins目录就行。社区有不少现成的配色方案,GitHub 上搜 “k9s skins” 就能找到。
快捷键:按?查看当前界面所有可用快捷键。K9s 的快捷键体系比较完整,常用操作基本都能一键触达。
谁适合用
如果你每天都在和 Kubernetes 打交道,K9s 能帮你省下大量重复敲命令的时间。特别是管理的集群和微服务比较多的时候,终端界面的可视化信息比一行行 kubectl 输出高效得多。
如果你只是偶尔用 K8s,或者习惯 GUI 工具(比如 Lens、K9s Dashboard),K9s 的学习成本也不高。装上试十分钟,基本就能决定适不适合自己。
K9s 是个人项目,作者 derailed 一直坚持免费开源。项目维护活跃,版本更新频率稳定。如果用着觉得好使,可以考虑通过 GitHub Sponsors 支持一下。
railed 一直坚持免费开源。项目维护活跃,版本更新频率稳定。如果用着觉得好使,可以考虑通过 GitHub Sponsors 支持一下。
