17.1ksm关注指标讲解 pod和node状态的统计

本节重点介绍 :

  • 主要的应用

    • 看状态
    • 数个数
  • 根据13105大盘模板看ksm指标

    • 节点指标
    • pod和容器指标
    • 资源对象按namespace分布指标
    • 其他资源指标

主要的应用

  1. 看状态,举例图片image.png
  2. 数个数,举例图片image.png

根据大盘模板 查看指标

  • https://grafana.com/grafana/dashboards/13105
  • 根据节点表格查看

节点指标

节点名

  • kube_node_info中的 node标签

kube_node_info{container_runtime_version="containerd://1.4.4", instance="kube-state-metrics:8080", job="kube-state-metrics", kernel_version="3.10.0-957.1.3.el7.x86_64", kubelet_version="v1.20.1", kubeproxy_version="v1.20.1", node="k8s-master01", os_image="CentOS Linux 7 (Core)", pod_cidr="10.100.0.0/24"}
kube_node_info{container_runtime_version="containerd://1.4.4", instance="kube-state-metrics:8080", job="kube-state-metrics", kernel_version="3.10.0-957.1.3.el7.x86_64", kubelet_version="v1.20.1", kubeproxy_version="v1.20.1", node="k8s-node01", os_image="CentOS Linux 7 (Core)", pod_cidr="10.100.1.0/24"}

cpu

节点总cpu核数

kube_node_status_capacity_cpu_cores

节点上pod cpu请求核数

sum(kube_pod_container_resource_requests_cpu_cores{}) by (node)

节点上pod cpu限制核数

sum(kube_pod_container_resource_limits_cpu_cores{}) by (node)

节点上 容器cpu使用核数

sum (rate (container_cpu_usage_seconds_total{id="/"}[2m]))by (node)

节点上pod cpu请求百分比

100 *sum(kube_pod_container_resource_requests_cpu_cores{})by (node) / 
sum(kube_node_status_allocatable_cpu_cores{})by (node)

节点上pod cpu限制百分比

100 * sum(kube_pod_container_resource_limits_cpu_cores)by (node) 
/ sum(kube_node_status_allocatable_cpu_cores)by (node)

节点上容器 cpu使用百分比

100 *sum (rate (container_cpu_usage_seconds_total{id="/"}[2m]))by (node) /
sum (kube_node_status_capacity_cpu_cores)by (node)

mem

节点总内存大小

- kube_node_status_allocatable_memory_bytes

节点上pod mem请求大小

sum(kube_pod_container_resource_requests_memory_bytes{}) by (node)

节点上pod mem限制大小

sum(kube_pod_container_resource_limits_memory_bytes{}) by (node)

节点上pod mem使用大小

sum(container_memory_working_set_bytes{}) by (node)

节点上pod mem请求百分比

100 * sum(kube_pod_container_resource_requests_memory_bytes{}) by (node)/
sum(kube_node_status_allocatable_memory_bytes) by(node)

节点上pod mem限制百分比


100 * sum(kube_pod_container_resource_limits_memory_bytes{}) by (node)/
sum(kube_node_status_allocatable_memory_bytes) by(node)

节点上pod mem使用百分比


100 * sum(container_memory_working_set_bytes{id="/"}) by (node)/
sum(kube_node_status_allocatable_memory_bytes) by(node)

节点上可分配pod总数

  • kube_node_status_allocatable_pods

文件系统

节点磁盘总量

sum (container_fs_limit_bytes{device=~"^/dev/.*$",id="/"}) by (node)

节点磁盘使用总量

sum (container_fs_usage_bytes{device=~"^/dev/.*$",id="/"}) by (node)

使用率

100 *  sum (container_fs_usage_bytes{device=~"^/dev/.*$",id="/"}) by (node)/
sum (container_fs_usage_bytes{device=~"^/dev/.*$",id="/"}) by (node)

id="/"的容器含义

  • 代码位置 D:\go_path\pkg\mod\github.com\google\cadvisor@v0.38.7\manager\manager.go
	// Create root and then recover all containers.err = m.createContainer("/", watcher.Raw)if err != nil {return err}
  • 含义是id="/"代表所有的有的容器和

node 指标表格

指标名类型含义
kube_node_status_conditiongaugecondition:<br> NetworkUnavailable <br> MemoryPressure <br> DiskPressure <br> PIDPressure <br> Ready
kube_node_status_allocatable_cpu_coresgauge节点可以分配cpu核数
kube_node_status_allocatable_memory_bytesgauge节点可以分配内存总量(单位:字节)
kube_node_spec_taintgauge节点污点情况
kube_node_status_capacity_memory_bytesgauge节点内存总量(单位:字节)
kube_node_status_capacity_cpu_coresgauge节点cpu核数
kube_node_status_capacity_podsgauge节点可运行的pod总数

pod指标

pod状态

运行的pod

sum(kube_pod_status_phase{phase="Running"})

pending的pod

sum(kube_pod_status_phase{ phase="Pending"})

Failed的pod

sum(kube_pod_status_phase{ phase="Failed"})

容器状态

Running的容器

sum(kube_pod_container_status_running{})

pod处于waiting状态原因

image.png

kube_pod_container_status_waiting_reason==1

pod处于terminated状态原因

kube_pod_container_status_terminated_reason==1

最近重启过的容器

delta(kube_pod_container_status_restarts_total[1m])>0

pod和 container指标表格

指标名类型含义
kube_pod_status_phasegaugepod状态统计:<br> Pending <br> Succeeded <br> Failed <br> Running <br> Unknown
kube_pod_container_status_waitingcounterpod处于waiting状态,值为1代表waiting
kube_pod_container_status_waiting_reasongaugepod处于waiting状态原因 <br> ContainerCreating <br>CrashLoopBackOff pod启动崩溃,再次启动然后再次崩溃 <br>CreateContainerConfigError <br>ErrImagePull <br>ImagePullBackOff <br>CreateContainerError <br>InvalidImageName <br>
kube_pod_container_status_terminatedgaugepod处于terminated状态,值为1代表terminated
kube_pod_container_status_terminated_reasongaugepod处于terminated状态原因 <br> OOMKilled <br> Completed <br> Error <br> ContainerCannotRun <br> DeadlineExceeded <br> Evicted <br>
kube_pod_container_status_restarts_totalcounterpod中的容器重启次数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/147756.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Tomcat靶场攻略

一.CVE-2017-12615 1.首页抓包&#xff0c;修改为 PUT 方式提交 ,将jsp木马写到数据包中 2.哥斯拉默认秘钥连接 二.后台弱⼝令部署war包 1.制作WAR包,上传 将JSP⽊⻢压缩为ZIP格式&#xff0c;然后修改后缀为war 2.文件上传成功后&#xff0c;默认会在网站根目录下生成和wa…

Apache 中间件漏洞

CVE-2021-41773 环境搭建 docker pull blueteamsteve/cve-2021-41773:no-cgid 访问172.16.1.4:8080 使⽤curl http://172.16.1.4:8080/cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd

面向对象设计其他原则例题

答案&#xff1a;D 知识点&#xff1a; 面向对象设计其他原则 重用发布等价原则 重用的粒度就是发布的粒度 共同封闭原则 包中的所有类对于同一性质的变化应该是共同封闭的。一个变化若对一个包产生影响&#xff0c;则将对该包里的所有类产生影响&#xff0c;而对于其他的…

Fyne ( go跨平台GUI )中文文档-Fyne总览(二)

本文档注意参考官网(developer.fyne.io/) 编写, 只保留基本用法 go代码展示为Go 1.16 及更高版本, ide为goland2021.2​​​​​​​ 这是一个系列文章&#xff1a; Fyne ( go跨平台GUI )中文文档-入门(一)-CSDN博客 Fyne ( go跨平台GUI )中文文档-Fyne总览(二)-CSDN博客 Fyne…

如何为 Java 应用程序创建安装程序

在 Java 中编写桌面应用程序时&#xff0c;我们总是希望其外观和感觉能够尽量贴近原生应用程序。因为一个优秀的应用程序应该要能融入其中&#xff0c;为用户提供已经熟悉的体验。 Swing GUI 的外观和感觉: Metal vs. Native 在桌面上&#xff0c;用户的使用旅程并不是从应用程…

什么是频谱泄露?

参考&#xff1a;https://www.bilibili.com/video/BV17a411j7bH/?spm_id_from333.337.search-card.all.click&vd_source7a1a0bc74158c6993c7355c5490fc600 在理想情况下&#xff08;周期信号且时间无限&#xff09;&#xff0c;信号经过 FFT 后可以得到理想的频谱 但在现实…

【iOS】引用计数(一)

【iOS】引用计数 文章目录 【iOS】引用计数前言ARC与MRC什么是引用计数的机制内存管理的思考方式自己生成的对象非自己生成的对象不再需要自己持有就释放无法释放非自己持有的对象 autorelease小结 前言 笔者最近开始学习了一下有关于引用计数的内容&#xff0c;写这篇博客来简…

关于自动化测试的一点了解

一 自动化测试基础的认识 1)首先&#xff0c;什么是自动化测试&#xff1f; 自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常&#xff0c;在设计了测试用例并通过评审之后&#xff0c;由测试人员根据测试用例中描述的过程一步步执行测试&#xff0c;得到实…

史上最全!!!大厂面试真题-SpringBoot自动装配的原理是什么?

我想你也在真实面试中被问过无数次这个问题了&#xff0c;我也是&#xff0c;但是不管你怎么搜&#xff0c;都只有那几篇八股文的答案&#xff0c;你问GPT它都解释不清楚&#xff0c;我决定自己写一篇详细的&#xff0c;避免遗忘也想帮助一下患难中的兄弟姐妹们&#xff0c;能把…

struct的精确用法

目录 我终于回来啦&#xff01; 1,可以创造根据结构体格式的成员或数组。 普通成员 数组成员 2,可以用指针遍历成员 3,使用typedef --------------------------------------------------------------------------------------------------------------------------------…

代码随想录Day 52|题目:101.孤岛的面积、102.沉没孤岛、103.水流问题、104.建造最大岛屿

提示&#xff1a;DDU&#xff0c;供自己复习使用。欢迎大家前来讨论~ 文章目录 图论part03题目一&#xff1a;101.孤岛的总面积解题思路DFS**BFS** 题目二&#xff1a;102. 沉没孤岛解题思路 题目三&#xff1a;103. 水流问题解题思路优化 题目四&#xff1a;104.建造最大岛屿…

[Linux]用户管理指令

开机/重启/登录/注销 进入xhsell 或者虚拟系统中, 右键桌面打开终端, 在终端执行命令, 重启或关机linux系统 建议使用普通账号登录, 如果权限不够时, 使用 su - 用户名 命令切换到超管, 然后再使用 logout命令退回到普通账号, logout 不能在图形界面的终端中使用 用户管理 Li…

Centos7.9 使用 Kubeadm 自动化部署 K8S 集群(一个脚本)

文章目录 一、环境准备1、硬件准备&#xff08;虚拟主机&#xff09;2、操作系统版本3、硬件配置4、网络 二、注意点1、主机命名格式2、网络插件 flannel 镜像拉取2.1、主机生成公私钥2.2、为啥有 Github 还用 Gitee2.3、将主机公钥添加到 Gitee2.3.1、复制主机上的公钥2.3.2、…

最佳植树距离 - 华为OD统一考试(E卷)

2024华为OD机试&#xff08;C卷D卷E卷&#xff09;最新题库【超值优惠】Java/Python/C合集 题目描述 按照环保公司要求&#xff0c;小明需要在沙化严重的地区进行植树防沙工作&#xff0c;初步目标是种植一条直线的树带。由于有些区域目前不适合种植树木&#xff0c;所以只能在…

电脑提示找不到msvcp110.dll怎么办?全方面详细解答

msvcp110.dll 是 Microsoft Visual C 2012 Redistributable Package 中的一个动态链接库文件。它是运行使用 Visual C 2012 开发的应用程序所必需的&#xff0c;包含了许多 C 标准库函数的实现。这些函数主要用于支持字符串处理、内存管理、输入输出流、异常处理等功能。 1.ms…

Clion使用vcpkg管理C/C++包

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、Clion安装vcpkg二、使用步骤1.切换到清单模式2.开始安装包 三、测试代码总结 前言 Linux上的库基本都可以通过apt或yum等包管理工具来在线安装包&#xff…

C语言深入理解指针(四)

目录 字符指针变量数组指针变量数组指针变量是什么数组指针变量怎么初始化 二维数组传参的本质函数指针变量函数指针变量的创建函数指针变量的使用代码typedef关键字 函数指针数组转移表 字符指针变量 字符指针在之前我们有提到过&#xff0c;&#xff08;字符&#xff09;&am…

NLP 文本分类核心问题

解决思路 分解为多个独立二分类任务将多标签分类转化为多分类问题更换 loss 直接由模型进行多标签分类 数据稀疏问题 标注更多数据&#xff0c;核心解决方案&#xff1a; 自己构造训练样本 数据增强&#xff0c;如使用 chatGPT 来构造数据更换模型 减少数据需求增加规则弥补…

MELON的难题- 华为OD统一考试(E卷)

2024华为OD机试&#xff08;C卷D卷&#xff09;最新题库【超值优惠】Java/Python/C合集 题目描述 MELON 有一堆精美的雨花石&#xff08;数量为 n&#xff0c;重量各异&#xff09;&#xff0c;准备送给 S和 W&#xff0c;MELON 希望送给俩人的雨花石重量是一致的。请你设计一…

爬虫 ----hook

目录 定义&#xff1a; 了解什么是hook? 举例 hook XHR请求 XMLHttpRequest 案例地址&#xff1a; Interceptors-拦截器 HOOK cookie操作 cookie 示范 常见的hook代码总结 1.Hook Cookie 2.Hook Header 3.Hook URL 4.Hook JSON.stringify 5.Hook JSON.parse 6.Ho…