Prometheus监控案例-kube-state-metrics

news2024/9/30 11:24:02

kube-state-metrics组件介绍

kube-stste-metrics项目地址:https://github.com/kubernetes/kube-state-metrics

kube-stste-metrics是一个简单的组件,通过监听API Server生成有关资源对象的状态指标(例如Deployment、Pod、Node等)。但需要注意的是kube-state-metrics的使用场景并不是监控对方是否存活,而是周期性的获取目标对象的metrics数据并在web界面展示或被Prometheus抓取,这些指标数据包括但不限于以下这些:

  • pod的状态,running或者terminating等
  • Pod重启了多少次
  • Deployment调度了多少副本?现在可用的有多少?
  • 目前有多少job在运行 等等

目前kube-state-metrics收集的指标数据可以参考官方文档介绍:https://github.com/kubernetes/kube-state-metrics/tree/main/docs#exposed-metrics

kuber-state-metrics并不存储这些指标数据,所以需要使用Prometheus抓取然后存储。

kube-state-metrics部署

kube-state-metrics版本和k8s集群版本是有依赖关系的,安装的时候要选择合适的版本。kube-state-metrics也有多种部署方式,这里以Deployment方式运行在集群上。

下载源码包

wget https://github.com/kubernetes/kube-state-metrics/archive/refs/tags/v2.8.0.tar.gz
tar xf v2.8.0.tar.gz
cd kube-state-metrics-2.8.0/examples/standard

修改部署文件deployment.yaml,修改其中的镜像为dockerhub上的镜像地址

root@master-01:~/kube-state-metrics-2.8.0/examples/standard# cat deployment.yaml |grep image
      - image: bitnami/kube-state-metrics:2.8.0

修改部署文件service.yaml,将Service类型修改为NodePort

root@master-01:~/kube-state-metrics-2.8.0/examples/standard# cat service.yaml
apiVersion: v1
kind: Service
metadata:
  labels:
    app.kubernetes.io/component: exporter
    app.kubernetes.io/name: kube-state-metrics
    app.kubernetes.io/version: 2.8.0
  name: kube-state-metrics
  namespace: kube-system
spec:
  type: NodePort
  ports:
  - name: http-metrics
    port: 8080
    targetPort: http-metrics
    nodePort: 30091
  - name: telemetry
    port: 8081
    targetPort: telemetry
  selector:
    app.kubernetes.io/name: kube-state-metrics

创建部署目录下的所有资源文件

kubectl apply -f kube-state-metrics-2.8.0/examples/standard

查看Pod状态
在这里插入图片描述

通过 任意节点:nodePort 访问kube-state-metrics指标数据接口验证
在这里插入图片描述

Prometheus监控kube-state-metrics

修改Prometheus配置添加一个job,内容如下:

  - job_name: kube-state-metrics
    static_configs:
    - targets: ["192.168.122.12:30091"]

配置修改后,重启Prometheus

systemctl restart prometheus

在Prometheus界面查看,kube-state-metrics对应的target已经UP。
在这里插入图片描述

Grafana导入模板,查看监控数据。模板ID: 17519
在这里插入图片描述

模板ID: 13824
在这里插入图片描述

模板ID:14518
在这里插入图片描述

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

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

相关文章

HiEV洞察 | 卖一台亏半台,激光雷达第一股禾赛隐忧仍在

作者 | 感知君Alex 编辑 | 王博2月9日晚,禾赛在万众瞩目下登陆纳斯达克,发行价19美元每股,首日涨超11%,市值超过Luminar,登顶全球市值最高的激光雷达公司。 随后两个交易日,其股价均有不同程度的涨幅&#…

08- 汽车产品聚类分析综合项目 (机器学习聚类算法) (项目八)

项目难点 主要通过聚类算法 kmeans 进行调整 . 需要找出分为几类时模型参数最佳 . (n_clusters)找出性价比较高的车 获取训练数据: train_X data.drop([car_ID,CarName],axis 1)计算模型的得分和误差: kmeans.inertia_ # inertia簇内误差平方和 from sklearn.cluster i…

【深度学习/机器学习】为什么要归一化?归一化方法详解

【深度学习/机器学习】为什么要归一化?归一化方法详解 文章目录1. 介绍1.1 什么是归一化1.2 归一化的好处2. 归一化方法2.1 最大最小标准化(Min-Max Normalization)2.2 Z-score标准化方法2.3 非线性归一化2.4 L范数归一化方法(最典…

宝塔搭建实战人才求职管理系统admin前端vue源码(二)

大家好啊,我是测评君,欢迎来到web测评。 上一期给大家分享骑士cms后台端在宝塔的搭建部署方式,这套系统是前后端分离的架构,前端是用vue2开发的,还需要在本地打包手动发布上宝塔,所以本期给大家分享&#x…

智能笔式万用表简单体验加拆解 - VC6012C - 智能电笔

简而言之,能用,甚至还挺好用的,机身大小参考上面的示意图,跟比较粗的记号笔差不多。单纯想买个万用表的话,如果不追求这种精简的外形,同价位有其他功能更强的选项。其实就是个能自动切换档位的智能万用表加…

山东大学软件学院面向对象简答题整理【个人向】

面向对象简答题整理【个人向】 0.试用面向对象语言简述改写和重定义的异同,以及方法绑定时的差别 改写是子类的方法和父类的方法具有相同的方法名和类型签名重定义是子类的方法和父类的方法方法名相同但类型签名不同在方法绑定时,改写是动态绑定&#…

kettle开发-Day38-其实chatGPT一直在身边

前言:最近chatGPT火出圈,其实不是chatGPT多智能,只是它用了一种新的交互方式来组织我们现有的知识,然后通过“高智商”的表达来使我们惊艳。但是目前或者未来的人工智能缺少创造力,他们只会整合信息目的是提高我们的效…

力扣sql简单篇练习(十八)

力扣sql简单篇练习(十八) 1 报告的记录 1.1 题目内容 1.1.1 基本题目信息 1.1.2 示例输入输出 1.2 示例sql语句 SELECT extra report_reason,count(distinct post_id) report_count FROM Actions WHERE action_dateDATE_SUB(2019-07-05,interval 1 day) AND extra IS NOT N…

突破监管“困局”,ScanV为您提供重保安全监测保障!

三月重保即将开始,重保期间是重要时间区间、重要基础设施和重要业务系统安全保障的“三重”考验期。 作为基于实战的网络安全提供商,知道创宇ScanV为您提供三月重保期间免费安全监测保障,并专门针对监管客户重保时期需求提供实战化监测保障方…

GGX发布全新路线图,揭示具备 Layer0 特性且可编程的跨链基建生态

据彭博社报道,具备跨链通信且可编程的 Layer0 基础设施协议 Golden Gate (GGX) 已进行了 两年的线下开发,于近日公开发布了最新的路线图,该路线图不仅显示了该生态在过去两年的发展历程,也披露了 2023 年即将实现的重要里程碑。 G…

IDEA上配置并运行Scala

这里使用 java17 和 Scala3.2.2作为演示 其中, IDEA 版本为2022.3.2 首先,要安装scala插件 Of course, you can also install third one above to format you scala program! 个人认为 Build system 选择 Intellij 比较方便! 然后&#xf…

jvm中指定时区信息user.timezone

问题 同一份程序使用时间LocalDateTime类型,在国内和国外部署后,返回的时间信息前端使用出问题。 因为LocalDateTime不带时区信息,国内调用后,前端页面默认使用的浏览器所在os的时区(我们的系统中没有给用户设置时区&…

Apache Beanutils为什么被禁止使用?

收录于热门专栏Java基础教程系列(进阶篇) 在实际的项目开发中,对象间赋值普遍存在,随着双十一、秒杀等电商过程愈加复杂,数据量也在不断攀升,效率问题,浮出水面。 问:如果是你来写…

09 OpenCV图形检测

1 轮廓描边 cv2.findContours() 函数是OpenCV中用于寻找轮廓的函数之一。它可以用于在二值图像中查找并检测出所有的物体轮廓,以及计算出这些轮廓的各种属性,例如面积、周长、质心等。 cv2.findContours() 函数的语法如下: contours, hiera…

张杰清唱高启强专属BGM简直就是天作之合,千万别点进来看

张杰清唱高启强专属BGM简直就是天作之合,千万别点进来看,#张杰#BGM#音乐 张杰演唱的《听》狂飙高启强自从出现在抖音上更是火得不可思议,它成为了不少年轻人喜爱的BGM,尤其是用它作为专属BGM的抖音视频更是受到网友的一致好评。 …

详解如何在ChatGPT内构建一个Python解释器

这篇文章主要为大家详细介绍了如何在ChatGPT内构建一个Python解释器,文中的示例代码讲解详细,具有一定的学习价值,需要的可以参考一下目录引用:Art Kulakov 《How to Build a Python Interpreter Inside ChatGPT》这个灵感来自于一…

Day892.MySql读写分离过期读问题 -MySQL实战

MySql读写分离过期读问题 Hi,我是阿昌,今天学习记录的是关于MySql读写分离过期读问题的内容。 一主多从架构的应用场景:读写分离,以及怎么处理主备延迟导致的读写分离问题。 一主多从的结构,其实就是读写分离的基本…

Java SE(1)——JDK安装,基本数据类型和运算

JDK安装,基本数据类型和运算 一 Java语言的初体验 1.JDK下载地址 Oracle官网: Java Downloads | Oracle,根据需要,下载最新或历史版本。 2.运行Java文件 编写一个简单的 HelloWorld.java 文件 public class HelloWorld{publ…

提供网络可测试的接口【公共Webservice】

提供网络可测试的接口 1、腾讯QQ在线状态 WEB 服务 Endpoint: qqOnlineWebService Web 服务 Disco: http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?disco WSDL: http://www.webxml.com.cn/webservices/qqOnlineWebService.asmx?wsdl 腾讯QQ在线状态 WEB 服…

【每日一题】 将一句话单词倒置,标点不倒置

用C语言将一句话的单词倒置,标点不倒置。 比如输入: i like shanghai. 输出得到: shanghai. like i 这道题目有很多种做法,既可以用递归,也可以分成两部分函数来写,本文就详细来讲解分装为两个函数的做法。…