prometheus获取kubelet接口监控数据

Kubernetes精讲之prometheus Prometheus是一个开源的服务监控系统和时序数据库其提供了通用的数据模型和快捷数据采集、存储和查询接口它的核心组件Prometheus服务器定期从静态配置的监控目标或者基于服务发现自动配置的目标中进行拉取数据新拉取到啊的 数据大于配置的内存缓存区时,数据就会持久化到存储设备当中。 阅读详情

一、前言

    k8s集群的kubelet服务内部有自带的cadvisor服务用于收集k8s集群的监控数据,所以可以通过调用kubelet的接口就能获取pod的资源监控数据,在新版本的k8s中,kubelet的监控数据获取端口为10250端口,老版本的是10255端口

二、配置prometheus获取监控数据

以下分为两种情况,一种是在k8s集群内部署的prometheus,一种是在k8s集群外部署的prometheus

以下是k8s集群外部署的prometheus配置

编辑Prometheus配置文件

vi /opt/prometheus/prometheus/prometheus.yml

scrape_configs:         #在该配置项下写入以下内容
  - job_name: k8s-cadvisor
    honor_timestamps: true
    metrics_path: /metrics/cadvisor
    scheme: https
    kubernetes_sd_configs:  # kubernetes 自动发现
    - api_server: https://10.1.60.119:6443  # apiserver 地址
      role: node   # node 类型的自动发现
      bearer_token_file: ./k8s.token
      tls_config:
        ca_file: ./ca.crt
        insecure_skip_verify: true
    bearer_token_file: ./k8s.token
    tls_config:
      ca_file: ./ca.crt
      insecure_skip_verify: true
    relabel_configs:
      - action: labelmap
        regex: __meta_kubernetes_node_label_(.+)
    metric_relabel_configs:
      - source_labels: [instance]
        separator: ;
        regex: (.+)
        target_label: node
        replacement: $1
        action: replace

以上关于token和ca证书的获取可以参考:k8s集群授权prometheus(集群外部署)_Apex Predator的博客-优快云博客 

token是创建一个名为k8s.token的文件,把k8s集群获取到的token放进去即可,ca证书就直接拷贝过来 

重启prometheus服务

systemctl restart prometheus

查看Prometheus是否获取到kubelet接口数据

以下是k8s集群内部署的prometheus配置

vi /opt/prometheus/prometheus/prometheus.yml

scrape_configs:         #在该配置项下写入以下内容
  - job_name: 'k8s-kubelet'
    scheme: https
    tls_config:
      ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
    bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
    kubernetes_sd_configs:
    - role: node
    relabel_configs:
    - target_label: __address__
      replacement: kubernetes.default.svc:443
    - source_labels: [__meta_kubernetes_node_name]
      regex: (.+)
      target_label: __metrics_path__
      replacement: /api/v1/nodes/${1}/proxy/metrics

  - job_name: 'k8s-cadvisor'    #配置cadvisor数据监控接口
    scheme: https
    tls_config:
      ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt  #配置证书,该路径为prometheus pod内部的路径
      insecure_skip_verify: true    #必须加入此项配置,不然访问接口会报错
    bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token  #配置token,该路径为prometheus pod内部的路径
    kubernetes_sd_configs:
    - role: node
    relabel_configs:
    - target_label: __address__
      replacement: kubernetes.default.svc:443
    - source_labels: [__meta_kubernetes_node_name]
      regex: (.+)
      target_label: __metrics_path__
      replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor
    metric_relabel_configs:
    - source_labels: [instance]
      separator: ;
      regex: (.+)
      target_label: node
      replacement: $1
      action: replace

  - job_name: kube-state-metrics    #配置kube-state-metrics数据监控接口
    kubernetes_sd_configs:
    - role: endpoints
      namespaces:
        names:
        - ops-monit
    relabel_configs:
    - source_labels: [__meta_kubernetes_service_label_app_kubernetes_io_name]
      regex: kube-state-metrics
      replacement: $1
      action: keep

重启prometheus服务

systemctl restart prometheus

以上就是两种不同的Prometheus部署方式去获取kubelet监控数据的配置方法

关于granfana使用的资源监控模板则是使用:

K8S Dashboard CN 20240513 StarsL.cn | Grafana Labs

需要配合kube-state-metrics监控一起使用,但是使用该模板在1.24本版以上的k8s中都会出现数据缺失

《kubernetes》Prometheus监控 本文介绍了在Kubernetes集群中部署Prometheus+Grafana监控系统的完整方案。主要内容包括:1)Prometheus监控系统架构及组件解析,包括server、node_exporter等;2)详细部署步骤:创建Prometheus Deployment/Service/ConfigMap/RBAC,部署Node_exporter DaemonSet,安装Grafana可视化组件;3)配置验证,通过NodePort访问Prometheus(9090端口)和Grafana(3000端口); 阅读详情

相关推荐

k8s部署 普罗米修斯(Prometheus)监控

Prometheus是一个开源的服务监控系统和时序数据库其提供了通用的数据模型和快捷数据采集、存储和查询接口它的核心组件Prometheus服务器定期从静态配置的监控目标或者基于服务发现自动配置的目标中进行拉 取数据新拉取到啊的 数据大于配置的内存缓存区时,数据就会持久化到存储设备当中。

D2961953033的博客 3855

Prometheus监控实战之Prometheus监控K8S

Prometheus监控K8S

sre救赎之路 1万+

Prometheus

Prometheus是一个开源的服务监控系统和时序数据库其提供了通用的数据模型和快捷数据采集、存储和查询接口它的核心组件Prometheus服务器定期从静态配置的监控目标或者基于服务发现自动配置的目标中进行拉取数据新拉取到啊的 数据大于配置的内存缓存区时,数据就会持久化到存储设备当中。

K1487994142的博客 1296

prometheus监控kubenetes

服务发现 服务发现就是服务提供者和服务使用者之间的服务代理。服务提供者去服务代理注册自己的服务,服务使用者去服务代理拿到可用的服务提供者列表,然后通过某种机制去选择一个服务提供者。 kubernetes提供的服务发现 提供的服务发现主要是通过API rest 来提供,包含下面几个...

chuxiong5717的博客 540

Prometheus+Grafana监控K8S 监控pod的解决方案(监控 java-JVM-pod)

prometheus 监控 k8s pod 容器服务状态

qq_40178286的博客 1万+

prometheus普罗米修斯集监控外部k8s

prometheus普罗米修斯集监控外部k8s

你是我一生的追求 2249

使用prometheus监控k8s的cAdvisor和kubelet值

使用prometheus监控k8s的cAdvisor和kubelet值 参考:http://www.sohu.com/a/312646169_618296 https://www.cnblogs.com/aguncn/p/9929684.html 从Kubernetes版本1.10起,cAdvisor的UI已经差不多被弃用了,Kubernetes 1.12版本...

weixin_33943836的博客 857

K8S篇之实现利用Prometheus监控pod的实时数据指标

Prometheus实时监控k8s集群中pod信息指标

小橙子的笔记屋 1万+

瞎更新,container_cpu_usage_seconds_total{job=“cadvisor“} 怎么没有啦

Container_cpu_usage_seconds_total(CCU)是容器资源监控中非常重要的一个指标,它可以帮助用户诊断容器应用程序的负载情况。它是定期统计容器已使用 CPU 时间总和,确切地计算容器中每个核心总体占用时间。这对于监视容器内运行的应用程序和进程的性能、优化性能以及准备扩展到容器集群和大规模架构来说,都是非常有用的。

咸鱼老罗的博客 2474

OCR开发车架号识别vin码识别系统

一、vin码识别车架号识别系统简介   vin码识别车架号识别系统,结合VIN码主机厂数据库及自身多年文字识别经验,针对机动车配置参数等信息的查询及采集业务推出的一款VIN码自动识别产品。   车架号识别vin码识别,主要应用在智能手机IOS与Android两个平台中。前端扫描查询模式,无需联网,只需扫描汽车前挡风玻璃右下角的VIN玛(车架号),即可轻松识别出车辆产地、品牌、车

OCR13512721355的博客 1434

Qt数据导出实战:从SQLite到CSV的完整流程(附内存优化技巧)

本文详细介绍了在Qt框架下,将SQLite数据库中的数据高效导出为CSV格式的完整流程。针对大数据量场景,重点分享了分块读取、流式写入等内存优化技巧,有效解决了嵌入式或资源受限环境中导出功能的内存占用与性能瓶颈问题,并提供了健壮的代码实现方案。

weixin_29313547的博客 342

使用prometheus监控traefik、redis、k8s集群各节点、各节点kubelet

1、Prometheus的数据指标是通过一个公开的 HTTP(S) 数据接口获取到的,我们不需要单独安装监控的 agent,只需要暴露一个 metrics 接口,Prometheus 就会定期去拉取数据;对于一些普通的 HTTP 服务,我们完全可以直接重用这个服务,添加一个/metrics接口暴露给 Prometheus2、有一些服务即使没有原生集成该接口,也完全可以使用一些 exporter 来...

2678

SIMPLIS仿真软件2.2-SIMPLIS快速入门2

SIMPLIS仿真软件2.2-SIMPLIS快速入门2导读 导读 本文承接上一篇文章。开始介绍SIMPLIS仿真部分。正如上一篇所讲的快速入门的定位,该文对SIMPLIS的三种分析模式不会很深入的讲解,只会记录下一些重要的设置和操作。对于SIMPLIS的三种分析模式的详细讲解,后面会专门撰写。如果读者还没有搭建上一篇文章中讲述的电路,那你可以点击这个链接免费下载所需的电路SIMPLIS_tutorial_buck_converter ,然后在这个电路的基础上继续进行以下操作。 ...

qq_44677482的博客 2万+

Kubernetes安装系列之Kubelet指标获取方式

这篇文章整理来介绍一下使用kubelet中使用api来确认指标数据的方式,为后续使用metrics server/heapster/prometheus打下一点基础。

知行合一 止于至善 5950

ESXI添加硬盘时提示 无法创建 VMFS 数据存储 - 无法更改主机配置

ESXI添加硬盘时提示 无法创建 VMFS 数据存储 - 无法更改主机配置1.打开ESXI的SSH2.找到不能添加的硬盘路径3.用SSH操作 1.打开ESXI的SSH 2.找到不能添加的硬盘路径 我的是第一个,找到你要添加但是不能添加的那个硬盘,点进去。 完整的路劲为:1/2 比如我的: /vmfs/devices/disks/t10.ATA_____ST500LT0122D1DG142___________________________________S3PHRNHQ (比较长哈!) 3.用SSH

AI_DOG的博客 2万+

STM32无线遥控小车的设计

基于SPI通信的无线摇杆小车的设计

weixin_69414084的博客 2928

prometheus监控k8s1.24以上版本pod实时数据指标

cAdvisor 自动查找所有在其所在节点上的容器,自动采集 CPU、内存、文件系统和网络使用的统计信息。其中token项的值就是prometheus需要用到的token信息,复制到prometheus服务器的一个文件中,这里保存文件为/usr/local/prometheus/cert/token。通过kubelet可以获取POD的一些基本的资源使用情况,而apiserver获取的是集群的一些信息,不是特殊情况下使用很少,所以这里只做简单配置。其中Tokens的值就是secrets的信息。

h952520296的博客 1746

Unity音游开发全指南:模板与免费资源高效构建节奏游戏

**粒子特效** | [Universal VFX](https://assetstore.unity.com/packages/vfx/particles/universal-vfx-159182) | 免费视觉特效 || **UI素材** | [Game UI Pack](https://assetstore.unity.com/packages/2d/gui/game-ui-pack-86908) | 现代风格UI元素 |**音游开发的黄金法则**:完美的节奏游戏是音乐与游戏的和谐统一。

Loving_enjoy的博客 730

外部prometheus+grafana监控k8s(附所需文件资源)——保姆级教程

外部普罗米修斯2种方式监控k8s集群

weixin_47531290的博客 3333

4.1 AI Agent对比分析:Coze、Dify、LangGraph,如何选择Agent框架

本文对比分析了三大主流AI Agent框架:Coze(字节跳动平台,可视化开发,适合快速企业应用)、Dify(开源企业级方案,支持定制部署)和LangGraph(代码开发灵活,适合复杂需求)。选择指南建议:需要快速开发选Coze,需开源定制选Dify,复杂灵活需求选LangGraph。核心要点包括理解各框架特点、根据需求评估选择,并提供了实践建议。下节将介绍Coze平台的实战应用。

yonggeit的博客 3147

WiFi基本概念(六)(L-STF,L-LTF)

L-STF它由10个OFDM symbol(1,0,1,0,1,0,1,0,1,0)构成,每个symbol是0.8us,GI是0.2us,总计10us。Symbol的长度是正常长度的1/4,因此称为Short training field,主要用于快速进行信号检测,信号同步,自动增益控制,接收天线选择(Diversity Selection)。 由于symbol长度是正常的1/4,子载波的宽度是正常的4倍,能进行初略的信道估计,其使用了-24, -20, -16, -12, -8, -4, 4, 8, 1

reekyli的专栏 6863

prometheus监控kubelet 规则

【代码】prometheus监控kubelet 规则。

2409_89571257的博客 188

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Prometheus使用cAdvisor 监控容器

说到容器监控我们自然会想到cAdvisor,我们前面也说过cAdvisor已经内置在了 kubelet 组件之中,所以我们不需要单独去安装,cAdvisor的数据路径为/api/v1/nodes//proxy/metrics,同样我们这里使用 node 的服务发现模式,因为每一个节点下面都有 kubelet,自然都有cAdvisor采集到的数据指标,配置如下: - job_name: 'kubernetes-cadvisor' kubernetes_sd_configs: - role: node

zhangshaohuas的博客 3762

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

prometheus监控_Prometheus 监控外部 Kubernetes 集群

前面我们的文章中都是将 Prometheus 安装在 Kubernetes 集群中来采集数据,但是在实际环境中很多企业是将 Prometheus 单独部署在集群外部的,甚至直接监控多个 Kubernetes 集群,虽然不推荐这样去做,因为 Prometheus 采集的数据量太大,或大量消耗资源,比较推荐的做法是用不同的 Prometheus 实例监控不同的集群,然后用联邦的方式进行汇总。...

weixin_39616056的博客 2167

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

基于Prometheus监控Kubernetes集群

在 ports 中定义暴露的端口库号列表,对外暴露访问的端口是 80,容器内部的端口也是 80。Kubeadm 提供了很多配置项,Kubeadm 配置在 Kubernetes 集群中是存储在ConfigMap 中的,也可将这些配置写入配置文件,方便管理复杂的配置项。Kubeadm 通过初始化安装是不包括网络插件的,也就是说初始化之后是不具备相关网络功能的,比如 k8s-master 节点上查看节点信息都是“Not Ready”状态、Pod 的 CoreDNS无法提供服务等。

z2050025507的博客 1084

k8s、prometheus、grafana数据采集和展示的链路流程

对于k8s节点和pod的性能和资源使用情况的监控,常用prometheus和grafana的组合来实现。metrics server监控组件定期从kubelet获取这些数据,转换成k8s API可以识别的格式。每个节点,包括master节点,都有一个kubelet组件,cAdvisor程序是kubelet组件的一部分。容器级别的数据采集是由cAdvisor程序实现。kukelet负责管理pod和容器的生命周期。kubelet负责汇总出节点级别的数据。cAdvisor采集容器级别的数据。

2401_84019227的博客 1468
上一篇: k8s集群授权prometheus(集群外部署)
下一篇: nginx前端配置(新)
Apex   Predator
博客等级 码龄6年 9371粉丝 289原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值