k9s监控k8s集群工具

一、概述

k9s是一款基于终端的Kubernetes集群管理工具,由开发者Derailed团队维护。它通过实时监控集群状态、提供交互式界面,让用户无需反复输入kubectl命令即可完成资源查看、调试和管理操作。

为什么要用k9s呢?因为最近接触了一个私有云项目,这个云平台做的比较差,看不到任何监控信息。

所以只能通过命令行方式,查询node节点,pod这些资源,使用情况。

二、安装k9s

安装方式有很多,比如:

Linux一条命令安装

复制代码
curl -sS https://webinstall.dev/k9s | bash

docker容器安装

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

github下载安装包安装

github下载地址:https://github.com/derailed/k9s/releases

我的是ubuntu 22.04系统,直接下载最新版本的deb文件即可

下载完成后,安装

复制代码
dpkg -i k9s_linux_amd64.deb

三、pod使用率

查看pod的cpu和内存使用率

比如查看uat-test命名空间下所有pod的使用情况

复制代码
k9s -n uat-test -c pods

输出如下:

复制代码
Context: cce-48fefwi93fe4-260fd709-93c0-46da-b05… <0> all       <a>       Attach       <ctrl-k>  Kill           ____  __ ________        
 Cluster: cce-48fefwi93fe4                         <1> uat-test  <ctrl-d>  Delete       <l>       Logs          |    |/  /   __   \______ 
 User:    260fd709-93c0-46da-b051-4874a96a0d64     <2> default   <d>       Describe     <p>       Logs Previous |       /\____    /  ___/ 
 K9s Rev: v0.50.9                                                <e>       Edit         <shift-f> Port-Forward  |    \   \  /    /\___  \ 
 K8s Rev: v1.20.7                                                <?>       Help         <z>       Sanitize      |____|\__ \/____//____  / 
 CPU:     33%                                                    <shift-j> Jump Owner   <s>       Shell                  \/           \/  
 MEM:     73%                                                                                                     Warning Memory level!   
┌─────────────────────────────────────────────────────────── pods(uat-test)[6] ──────────────────────────────────────────────────────────┐
│ NAME↑                                        PF READY STATUS            RESTARTS CPU %CPU/R %CPU/L MEM %MEM/R %MEM/L IP            NOD │
│ gateway-6b7696c6d9-wclfv                     ●  1/1   Running                  0   1      1      0 433    216     84 10.153.76.63  nth │
│ info-7cc6c94678-99mbw                        ●  1/1   Running                  0   2      2      1 632    316     63 10.153.76.89  nth │
│ publishing-5dcb6b8748-bkqrs                  ●  1/1   Running                  0   3      3      1 736    368     73 10.153.76.85  nth │
│ system-5dc667574f-frv7r                      ●  1/1   Running                  0   2      2      1 721    360     72 10.153.76.88  nth │
│ user-7f4887776-zv4sf                         ●  1/1   CrashLoopBackOff         1   3      3      1 497    497    100 10.153.76.86  nth │
│                                                                                                                                        │
│                                                                                                                                        │
│                                                                                                                                        │
│                                                                                                                                        │
│                                                                                                                                        │
│                                                                                                                                        │
│                                                                                                                                        │
│                                                                                                                                        │
│                                                                                                                                        │
│                                                                                                                                        │
└────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
  <pod>                                                                                                                                   
    

1.默认列含义

(以Pod视图为例)

列名 说明
‌NAME‌ Pod 名称,唯一标识符
‌NAMESPACE‌ 所属命名空间(此处为uat-test)
‌STATUS‌ Pod 状态(Running/Pending/Failed等)

READY‌ 容器就绪状态(格式:x/x,表示就绪容器数/总容器数)
‌RESTARTS‌ 容器重启次数
‌AGE‌ Pod 创建后的存活时间

CPU%‌ 当前CPU使用率(百分比)

MEM%‌ 当前内存使用率(百分比)

CPU‌ 实际CPU使用量(单位:m或核数,如500m=0.5核)
‌MEM‌ 实际内存使用量(单位:Mi或Gi,如256Mi=256MB)

2. 关键指标说明

CPU%‌和‌MEM%‌:显示实时使用率,基于kubectl top pod数据动态更新‌

CPU‌和‌MEM‌:显示实际资源消耗量,与Pod的limits配置对比可判断是否超限‌

STATUS‌:异常状态(如CrashLoopBackOff)需结合kubectl describe pod排查‌

3. 其他视图差异

Deployment视图‌:会额外显示UP-TO-DATE(更新副本数)和AVAILABLE(可用副本数)‌

Node视图‌:包含CPU%和MEM%的节点级资源使用率统计‌

这里重点,只需要关注2个参数即可
%CPU/L(CPU限制使用率)
%MEM/L(内存限制使用率)

这2个参数,会实时更新,反应的是当前pod使用的资源情况。如果超过80%,就需要考虑增加对于的资源了,防止出现OOM的情况。

在上面的输出信息可以看到,user服务,内存使用率已经是100%了,需要增加内存了。

四、node节点使用率

复制代码
k9s -c nodes

输出如下:

复制代码
Context: cce-48fefwi93fe4-260fd709-93c0-46da-b05… <c>      Cordon     <u> Uncordon                                                                     ____  __ ________        
 Cluster: cce-48fefwi93fe4                         <ctrl-d> Delete     <y> YAML                                                                        |    |/  /   __   \______ 
 User:    260fd709-93c0-46da-b051-4874a96a0d64     <d>      Describe                                                                                   |       /\____    /  ___/ 
 K9s Rev: v0.50.9                                  <r>      Drain                                                                                      |    \   \  /    /\___  \ 
 K8s Rev: v1.20.7                                  <e>      Edit                                                                                       |____|\__ \/____//____  / 
 CPU:     13%                                      <?>      Help                                                                                                \/           \/  
 MEM:     79%                                                                                                                                            Warning Memory level!   
┌──────────────────────────────────────────────────────────────────────────────── nodes(all)[2] ────────────────────────────────────────────────────────────────────────────────┐
│ NAME↑                                   STATUS   ROLE                    TAINTS   VERSION      PODS   CPU   CPU/A   %CPU     MEM    MEM/A    %MEM    GPU/A    GPU/C AGE       │
│ cast-kubernetes-test-master-bnvoaqcj    Ready    control-plane,master    1        v1.20.7        21   421    1800     23    5058     5426      93      n/a      n/a 8d        │
│ cast-kubernetes-test-worker-tevaemdx    Ready    <none>                  0        v1.20.7        27   323    3900      8    9241    12657      73      n/a      n/a 6d2h      │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
│                                                                                                                                                                               │
└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
  <node>                                                                                                                                                                         

可以看到master节点,目前cpu和内存使用率,分别是:23%,93%

node节点,目前cpu和内存使用率,分别是:8%,73%

相关推荐
fendouweiqian2 小时前
编写后端JAR包蓝绿发布脚本
运维开发
半梦半醒*13 小时前
ansible阶段练习题
linux·运维·自动化·ansible·负载均衡·运维开发
数据爬坡ing20 小时前
C++ 类库管理系统的分析与设计:面向对象开发全流程实践
java·运维·开发语言·c++·软件工程·软件构建·运维开发
半梦半醒*3 天前
ansible判断
linux·运维·centos·ansible·运维开发
半梦半醒*4 天前
ansible变量
linux·运维·开发语言·ansible·运维开发
半梦半醒*5 天前
ansible常用命令的简单练习
linux·运维·服务器·ansible·运维开发
半梦半醒*5 天前
ansible的playbook练习题
linux·运维·服务器·ssh·ansible·运维开发
我命由我123456 天前
Word - Word 查找文本中的特定内容
运维·经验分享·笔记·word·运维开发·文档·文本
半梦半醒*8 天前
playbook剧本
linux·运维·服务器·ssh·ansible·运维开发