prometheus学习笔记之node-export

本文涉及的产品
应用实时监控服务-用户体验监控,每月100OCU免费额度
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
应用实时监控服务-应用监控,每月50GB免费额度
简介: prometheus 监控 node-exporter

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
:⽹络带宽指标
nodetime:当前系统时间
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. 标志来启用收集器
--collector.systemcd
通过提供 --no-collector. 标志来禁用默认启用的收集器
--no-collector.cpu #禁用CPU采集器
仅启用某些特定收集器,请使用 --collector.disable-defaults --collector.
--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 < /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中查询验证,需要注意的是如果prometheus自定义了node_exporter收集器,并且是collect,那么prometheus可能不会去收集

参考文档:

https://github.com/prometheus/node_exporter

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

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
相关文章
|
4月前
|
Prometheus 监控 Kubernetes
prometheus学习笔记之简介与安装
prometheus学习笔记之简介与安装
prometheus学习笔记之简介与安装
|
3月前
|
Prometheus Kubernetes 监控
prometheus学习笔记之集群内服务发现环境准备
本文介绍了在Kubernetes集群中部署Prometheus监控系统的详细步骤。首先创建用于监控的命名空间,并配置Docker以顺利下载镜像。接着,通过DaemonSet方式在集群中部署Node Exporter,确保每个节点上的指标都能被收集。然后,安装并配置NFS存储类别,以便为Prometheus提供持久化存储。最后,详细展示了如何在Kubernetes中部署Prometheus服务器,包括创建相关的配置文件、部署服务、设置角色权限以及暴露服务等
|
4月前
|
Prometheus 监控 Cloud Native
prometheus学习笔记之cAdvisor
prometheus学习笔记之cAdvisor
|
4月前
|
存储 Prometheus Cloud Native
prometheus学习笔记之PromQL
prometheus学习笔记之PromQL
|
4月前
|
Prometheus 监控 Cloud Native
prometheus学习笔记之Grafana安装与配置
prometheus学习笔记之Grafana安装与配置
|
4月前
|
Java jenkins Shell
jenkins学习笔记之五:Maven、Ant、Gradl、Node构建工具集成
jenkins学习笔记之五:Maven、Ant、Gradl、Node构建工具集成
|
4月前
|
Prometheus 监控 Cloud Native
性能监控之 node_exporter+Prometheus+Grafana 实现主机监控
【8月更文挑战第3天】性能监控之 node_exporter+Prometheus+Grafana 实现主机监控
422 0
|
存储 Prometheus 监控
服务搭建篇(一) 搭建基于prometheus + node_exporter + grafana + Alertmanager 的监控报警系统 , 保姆级教程
Alertmanager处理客户端应用程序(如Prometheus服务器)发送的警报。它负责重复数据删除、分组,并将它们路由到正确的接收器集成,如电子邮件、PagerDuty或OpsGenie。它还负责静音和抑制警报
348 0
|
前端开发
前端学习笔记202306学习笔记第四十三天-安装多个版本的node之2
前端学习笔记202306学习笔记第四十三天-安装多个版本的node之2
84 0
前端学习笔记202306学习笔记第四十三天-安装多个版本的node之2
|
Prometheus 监控 Cloud Native
性能测试--搭建node_exporter+prometheus
性能测试--搭建node_exporter+prometheus

相关产品

  • 可观测监控 Prometheus 版