K9S简介

K9s是一个命令行界面(CLI)工具,用于管理Kubernetes集群。它是一个流行的开源工具,可以帮助Kubernetes管理员和开发人员轻松管理他们的Kubernetes集群。在本文中,我们将简单介绍K9s的概念、功能和如何使用它。

更多免费精彩内容,请关注我的技术微信公众号DevOps365
在这里插入图片描述

基本功能

在没有Web版的Dashboard的情况下,您可以使用命令行命令来管理您的Kubernetes集群。这使得您可以轻松地执行各种操作,例如查看资源、编辑资源、删除资源等。

  • 资源监视:使用K9s,您可以轻松地监视和管理Kubernetes集群中的各种资源,例如Pod、Deployment、Service和ConfigMap等。
  • 资源修改:您可以使用K9s的资源编辑功能来修改这些资源,例如更新Pod的副本数量或更改Service的类型。
  • K9s还提供了强大的资源搜索功能,使您可以快速查找特定的资源。

更多免费精彩内容,请关注我的技术微信公众号DevOps365

进阶功能

除了这些核心功能之外,K9s还提供了许多其他有用的功能,这些功能可以帮助您更轻松地管理和监视Kubernetes集群,例如:

  • 资源过滤
  • 上下文切换
  • 集群状态监视
  • Kubernetes事件跟踪。

更多免费精彩内容,请关注我的技术微信公众号DevOps365

现在,让我们看看如何使用K9s。首先,您需要安装K9s工具。您可以从K9s的GitHub页面下载二进制文件,或使用Homebrew、apt-get或yum等包管理器来安装K9s。一旦安装完成,您可以在命令行中键入"k9s"来启动K9s。参考链接
k9s界面示例

命令详解

以只读权限运行

k9s为用户提供了方便的管理k8s资源的方式,同时也带来了安全上的风险,为了避免误操作对环境造成影响,我们可以在启动k9s时指定参数,以只读方式运行:

k9s --readonly

这样,在k9s界面中,就没有权限对资源进行任何的修改了。

更多免费精彩内容,请关注我的技术微信公众号DevOps365

显示帮助信息与键盘组合功能

进入K9S命令行界面后,直接输入?(注意不是: ?), 会显示如下的帮助界面,提示了每个键盘组合的功能, 请注意,在不同界面下, 按下?键显示的是对当前界面的帮助提示,下面的截图是在alias界面下的帮助信息
请添加图片描述

基本使用

下表是一些通用的键盘组合规则

更多免费精彩内容,请关注我的技术微信公众号DevOps365

键盘组合功能详细说明
<c>复制选中的内容只会复制其中一个Column, 例如如果在Pods界面,则只会复制Pod的Name, 可以在剪切板中使用
<ctrl-r>刷新当前显示的界面刷新当前界面显示的资源及其状态
<shift-key>按某个column排序显示如在pods界面,想要按pod名排序,可以按下<shift-n>,如果想按CPU占用排序,可以按下<shift-c>, 想要按IP地址排序,可以按下<shift-i>, 注意,排序时不能打开大写锁,否则功能会不一样,例如shift-I的功能不是按IP地址排序,而是修改pod的image
<space>标记选中资源被标记的资源会在k9s界面中高亮显示
<d>显示资源描述等同于运行kubectl describe命令
<y>显示资源的yaml文件内容等同于kubectl get xxx -o yaml命令
<e>编辑选中的资源进入编辑后,默认是vim编辑器,完成后:wq退出后立即生效
<l>显示pod的日志显示log的日志信息,可以按<w>键切换显示的格式(自动换行)
<ctrl-d>删除资源删除前会提示确认
<ctrl-k>杀死资源强制删除,删除前不会有提示信息
<ctrl-w>显示资源的更多信息等同于命令kubectl get xxx -o wide
<ctrl-z>切换显示错误资源按一下就只显示状态错误的资源,再按一下就显示所有资源
<: 资源类型>显示某种类型的所有资源常用的有: : ns(显示所有namespace), : pods(显示所有pods)等, 资源类型可以写全称也可以写缩写,如service的缩写是svc, statefulset的缩写是sts, daemonset的缩写是ds
<ctrl-c>退出k9s退出k9s界面工具

进阶使用

上面介绍的是一些基本的,常用的键盘组合,实现了大部分的对资源的增删改查功能, 如果你是一个资深的kubernetes管理员,你通常还需要关心:

  • 多个集群的管理
  • 集群状态监控
  • 快速过滤关注的资源
  • kubernetes事件的跟踪

更多免费精彩内容,请关注我的技术微信公众号DevOps365

下面是相关命令的键盘组合列表及详细说明:

键盘组合功能详细说明
<: ctx>查看kubernetes上下文列表(即集群列表)查看所有可访问的k8s集群,选中某个集群后回车可使用其配置文件,连接对应的集群
<: ctx name>连接指定K8S集群连接到name指定的k8s上下文名称的集群
<: pulses>/<: pu>集群监控面板如图可以显示集群的资源使用情况以及健康状态,如下图,显然有一个pod处于错误状态,根据顶部提示,按4可以进入到pods界面查看,再按<ctrl-z>可以查看错误的pod请添加图片描述
<: xray resource_type [namespace]>查看资源关联关系如:<: xray deployments><: xray deployments default>, 分别是查看所有namespace/指定namespace下以deployments为维度的各资源的联系,不同的资源类型会用不同的图标表示,如下图在这里插入图片描述
<: popeye>集群状态评分集群的每个资源都会被评分(0 - 100),综合起来会给集群一个整体评分(0-100)和等级(A/B/C),如下图:在这里插入图片描述选中某项具体的资源,按下回车键,会显示更加详细的评价信息,如选中daemonsets, 会显示具体扣分的原因,如下图,会因为没有为port命名和没有设置资源限制而影响评分请添加图片描述
<: crb>/<: clusterrolebinding>查看RBAC可以直观的查看集群的RBAC信息, 执行命令后,可以选中某个具体的Clusterrolebinding, 回车查看详细权限,如下图, 查看k9s这个clusterrole的具体权限:请添加图片描述请添加图片描述

总结

在没有图形界面,只有命令行的条件下, k9s dashboard提供了一套强大的UI Dashboard, 让你远离记忆繁琐的kubect命令的烦恼,让你使用k8s的体验飞升,并且图形化的展示,让你对k8s有了更好的理解。快来试试吧!

更多免费精彩内容,请关注我的技术微信公众号DevOps365

Logo

开源、云原生的融合云平台

更多推荐