首页 > 编程语言 >prometheus学习笔记之node-export

prometheus学习笔记之node-export

时间:2024-09-27 16:50:38浏览次数:9  
标签:node exporter 收集器 -- prometheus export collector

1.安装node-export

k8s各node节点使⽤⼆进制或者daemonset⽅式安装node_exporter,⽤于收集各k8s node节点宿主机的监控指标数据,默认监听端⼝为9100

wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz
tar xf node_exporter-1.3.1.linux-amd64.tar.gz -C /usr/local
cd /usr/local/
ln -sv node_exporter-1.3.1.linux-amd64/ node_exporter

vim /usr/lib/systemd/system/node-exporter.service 
[Unit]
Description=Prometheus Node Exporter
After=network.target

[Service]
ExecStart=/usr/local/node_exporter/node_exporter #可以再命令行自定义要运行的采集器   --web.disable-exporter-metrics参数可以禁用goland SDK相关数据

[Install]
WantedBy=multi-user.target

systemctl   daemon-reload &&  systemctl  restart node-exporter
systemctl  enable  node-exporter
netstat -tnlp #默认9100

2.访问node exporter web界⾯验证安装

访问地址:节点ip:9100/metrics,正常情况下会显示当前节点信息

node-exporter常⻅指标

node_boot_time:系统⾃启动以后的总结时间
node_cpu:系统CPU使⽤量
node_disk*:磁盘IO
node_filesystem*:系统⽂件系统⽤量
node_load1:系统CPU负载
node_memeory*:内存使⽤量
node_network*:⽹络带宽指标
node_time:当前系统时间
go_*: node exporter中go相关指标
process_*: node exporter⾃身进程相关运⾏指标

3.配置prometheus server收集node-exporter指标数据

1.修改prometheus配置文件
vim /usr/local/prometheus/prometheus.yml
#在proemtheus job下添加需要抓取的target的,根据实际情况修改
scrape_configs:
  - job_name: "prometheus"
    static_configs:
      - targets: ["localhost:9090","192.168.100.131:9100","192.168.100.132:9100"]


2.更新配置
curl -X POST http://127.0.0.1:9090/-/reload  #启动时需要添加开启热更新参数

4.验证node数据抓取

prometheus图形数据展示

5.自定义node_exporter收集器

node_exporter -h #default: enabled表示默认启用   default: disabled表示默认禁用

通过提供 --collector.<name> 标志来启用收集器
--collector.systemcd
通过提供 --no-collector.<name> 标志来禁用默认启用的收集器
--no-collector.cpu #禁用CPU采集器
仅启用某些特定收集器,请使用 --collector.disable-defaults --collector.<name>
--collector.disable-defaults --collector.meminfo --collector.cpu #关闭默认采集项 只开启内存和CPU采集 
也可以在prometheus的scrape配置中设定
  - job_name: "prometheus"
    static_configs:
    - targets:
      - localhost:9100
    params:
     collect[]:  #可以多次使用但是不能和exclude[]同时使用
      - cpu
      - meminfo


include和exclude flage
一些收集器可以配置为使用专用标志包含或排除某些模式。
关键字:exclude(排除) include(包含)
注意,这些标志在同时支持两者的收集器上是互斥的。
示例:
--collector.filesystem.mount-points-exclude=^/(dev|proc|sys|var/lib/docker/.+|var/lib/kubelet/.+)($|/)
也可以在prometheus的scrape配置中设定
  params:
    exclude[]:
      - netdev
具体的收集器有支持不同的include和exclude flage,具体参考官方文档:https://github.com/prometheus/node_exporter

如果自定义了采集器,可以在目标节点显示,如下图

5.配置本地采集目录

#数据格式参考官方文档:https://prometheus.io/docs/instrumenting/exposition_formats/
cat <<EOF > /metrics/node_mem.prom #注意文件的后缀名称 #TYPE node_memory_usage gauge node_memory_usage 4311744512 # TYPE memory_total gauge node_memory_total 103481868288 EOF # 可使用参数 --web.telemetry-path="/metrics" #指定本地数据采集的目录 --web.disable-exporter-metrics #指定本地采集数据的文件 node_exporter --collector.textfile.directory=/metrics #直接指定目录

在node_exporter上验证

 在prometheus中查询验证

 

参考文档:

https://github.com/prometheus/node_exporter

https://prometheus.io/docs/instrumenting/exposition_formats/

标签:node,exporter,收集器,--,prometheus,export,collector
From: https://www.cnblogs.com/panwenbin-logs/p/18436114

相关文章

  • 利用Python开发Exporter,集成Prometheus和Grafana对进程监控
    利用Python开发Exporter,集成Prometheus和Grafana对进程监控在现代软件开发和运维中,监控是确保系统稳定运行和快速响应问题的重要手段。Prometheus和Grafana的组合是监控领域的强大工具,它们能够收集、处理和展示各种指标数据。本文将介绍如何利用Python开发一个Exporter,通过Promet......
  • prometheus学习笔记之UI页面讲解
    一、Graph页面1.图标菜单Uselocaltime:使用当地时间Enablequeryhistory:开启查询历史Enableautocomplete:开启自动补全Enablehighlighting:开启高亮显示Enablelinter:开启提示功能2.table查询面板table又可以称为1个点的查询3.graph查询面板 查询一段时间内的数......
  • 通过构建具有依赖关系的后端框架来学习 Nodejs
    我在github上为每个尝试涉足后端开发世界(不仅仅是Node.js)的人创建了一本开源(免费)书籍您还可以在本书的网站上以更易于理解的方式访问内容-CacheLane-LearnNode.jstheHardWay这将需要很长时间来构建完成版本(几个月),但不用担心,我已经承诺并承诺每天都会添加新内容。因此,即......
  • 通过示例在 Unity 和 NodeJS 上的游戏中创建安全、快速的多人游戏
    介绍规划多人游戏开发方法-在整个项目的进一步开发中发挥着最重要的作用之一,因为它包含了我们在创建真正高质量的产品时应该考虑的许多标准。在今天的宣言教程中,我们将看一个方法示例,该方法使我们能够创建真正快速的游戏,同时尊重所有安全和反违规规则。所以,让我们定义我们的主要......
  • 基于Node.js+vue基于java的校园疫情管理系统(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景近年来,全球范围内频繁爆发的疫情事件对教育领域产生了深远影响,特别是在校园环境中,如何有效防控疫情、保障师生健康安全成为了亟待解决的问题。传统的校园管......
  • 解决 Nodejs 中的“Punycode Module is Deprecated”问题
    大家好,我叫asimkhan,目前是metamelon的全栈开发人员。最近,我在为naseebi.com(一个婚姻移动和web应用程序)项目工作时遇到了一个令人沮丧的问题。该问题涉及node.js中punycode模块的弃用,我想与您分享我的经验和解决方案。问题在应用程序中使用配置文件创建功能时,我......
  • 基于Node.js+vue基于springboot的模拟面试平台7tch0(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展和互联网应用的广泛普及,传统的招聘模式正逐步向数字化、智能化转型。面试作为招聘流程中的关键环节,其效率与效果直接影响到企业的人......
  • 基于Node.js+vue在线考试系统(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着互联网技术的迅猛发展和普及,教育领域正经历着深刻的变革。传统考试模式受限于时间、地点和资源的限制,已难以满足现代教育的多元化需求。在线考试系统作......
  • 文件系统:Nodejs `fs` 模块
    node.js中的fs(文件系统)模块是一个用于处理文件系统的强大工具,允许您与服务器上的文件和目录进行交互。它内置于node.js中,因此您无需安装任何额外的东西即可使用它。让我们来探讨一下fs的工作原理及其关键功能。1.什么是fs模块?fs模块提供了一个api,用于以紧密围绕标准......
  • 掌握 Nodejs 中的电子邮件发送:分步指南
    发送电子邮件是许多web应用程序中的常见功能,无论是用于用户注册、密码重置还是营销活动。在本指南中,我们将向您展示如何在nodemailer模块的帮助下使用node.js发送电子邮件。我们将涵盖从设置项目到发送html电子邮件和处理附件的所有内容。1.开始使用您的node.js电......