k9s:快速管理Kubernetes资源

事实上Kubectl是最流行的Kubernetes命令行工具,用于访问Kubernetes集群指标。但是,使用Kubectl获取指标和操作Kubernetes集群需要知道许多命令。尽管命令行接口很健壮,但是命令运行起来很快就会变得很麻烦。例如,下面是一个编辑deployment的命令:

kubectl edit deployment/mydeployment -o yaml --save-config

虽然不是最长的命令,但是多次操作这样的命令会很麻烦。幸运的是,有个开源项目K9s是一个终端UI,可以更快更容易地与k8s集群交互。它抽象了许多常见的kubectl命令,并将它们映射到几个快捷键或鼠标点击上面。

在本教程中,你将学习如何安装K9s并使用它来获取集群指标并帮助管理你的k8s集群。

在Linux发行版上安装k9s

在安装K9s之前,如果还没有安装kubectl,请确保安装了kubectl。本教程将使用一个minikube集群作为示例项目,但是k9s与任何类型的k8s集群都可正常工作。
可以使用homebrew安装:

brew install derailed/k9s/k9s

本教程将重点介绍如何在Linux上使用k9s,但也有一些版本可用于其他操作系统。
通过检查k9s版本确认安装成功。

k9s version

如果K9s安装成功,系统显示如下:

 ____  __.________       
|    |/ _/   __   \______
|      < \____    /  ___/
|    |  \   /    /\___ \ 
|____|__ \ /____//____  >
        \/            \/ 

Version:    v0.27.0
Commit:     b5a7cfb3af43a0a79423683094bd33b1b9605faf
Date:       2023-01-26T18:09:55Z

首先,使用k9s -h命令显示所有可用命令。这将帮助你更快地学习k9s,更清楚地了解某些命令。此外,你可以从文档中了解更多关于K9s的信息。

# k9s  -h
K9s is a CLI to view and manage your Kubernetes clusters.

Usage:
  k9s [flags]
  k9s [command]

Available Commands:
  completion  Generate the autocompletion script for the specified shell
  help        Help about any command
  info        Print configuration info
  version     Print version/build info

K9s访问Minikube集群指标

在开始使用k9s之前,让我们启用metrics-server插件,它将允许k9s访问minikube集群指标。使用以下命令允许K9s从minikube集群收集指标:

minikube addons enable metrics-server

将得到以下输出:

! Executing "docker container inspect minikube --format={{.State.Status}}" took
an unusually long time: 6.2066183s
* Restarting the docker service may improve performance.
* The 'metrics-server' addon is enabled

使用K9s UI终端

使用以下命令在终端上启动k9s:

k9s

将得到以下输出,其中显示了kubecconfig中存在的所有集群;K9s将自动从kubecconfig读取与集群相关的信息。然后你可以选择你想要访问的集群:



如果接下来在终端按数字0,你将得到集群中的所有名称空间资源信息:



你可以使用UI表顶部显示的命令在UI终端中查看集群资源信息。

此外,你还可以在键盘上按?键获得所有可用的快捷键:


编辑资源

使用k9s,很容易编辑资源的manifest。通过点击字母e, K9s会进入你选择的资源YAML文件,可在文本编辑器中编辑:



修改内容并保存文件,然后关闭文本编辑器返回K9s终端。

如何使用k9管理集群

设置日志管理系统来简化日志可以帮助你管理和跟踪集群性能和资源问题。日志工具将提供分类日志和稍后检索日志的功能。K9s将显示命名空间的日志。要获取特定命名空间的日志,单击该命名空间,然后单击L键显示日志。
K9s不允许选择文本。如果要复制日志,请按c键。



要显示特定时间范围的日志,请在键盘上输入以下数字:
1:表示最近一分钟的所有日志。
2: 5分钟以上。
3: 15分钟以上。
4: 30分钟以上。
0: pod的整个生命周期。



使用escape键回到主终端界面。

获取关于集群的信息

K9s有一个搜索栏,你可以通过按冒号:并输入你想访问的资源来切换。例如,如果您按下冒号并键入“de”,k9s将自动补全以建议显示deploy资源。如果你想接受建议,请按tab键,然后按enter键访问资源:



要获得在K9s中的位置,请查看K9s UI终端的底部,你将看到当前所在位置。右边的最后一个组件是你当前的位置:



上图显示我目前正在访问pod日志。如果我按下esc键,容器文本将高亮显示为黄色,以表明我现在正在访问容器。
如果你想回退,按下esc键。你还可以在K9s UI的每个部分的顶部获得其他导航功能和任务。

当你需要帮助的时候,按?键以获取可应用于所选资源的所有键。
以下是你肯定会用到的基本导航键:



对对象和资源进行排序可以提高搜索能力。使用以下键对组件进行排序,并快速找到你要找的东西:

描述资源

使用K9s,你不需要输入很长的命令来描述一个命名空间或任何其他Kubernetes资源;只要按下字母d,你就会得到描述:


获取资源指标

K9s使集群管理变得简单,因为它允许你使用:pulses的命令获取已创建的Statefulsets、DaemonSets、deployment和其他资源的数量。这个命令增强了可访问性,你可以在一个窗口中查看资源,而且最重要的是,可以选择要描述或编辑的对象。


总结

在本教程中,学习了如何在Linux上安装K9s,获取关于k8s集群的信息,以及如何使用K9s管理集群。
随着Kubernetes第三方工具和插件的增加,简化了容器编排过程,对于不知道容器是什么的初学者来说,Kubernetes将变得更容易、更友好。K9s已经被证明是一个第三方工具,可以在特定的层面上消除Kubernetes的痛点。它也是一个很好的工具,推荐给那些觉得使用Kubectl管理资源困难的Kubernetes初学者。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,080评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,422评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,630评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,554评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,662评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,856评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,014评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,752评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,212评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,541评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,687评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,347评论 4 331
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,973评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,777评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,006评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,406评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,576评论 2 349

推荐阅读更多精彩内容