写点什么

Prometheus Exporter (一)Node Exporter

作者:耳东@Erdong
  • 2021 年 11 月 17 日
  • 本文字数:952 字

    阅读完需:约 3 分钟

Node Exporter 是一个监控硬件和操作系统的组件,使用 Golang 进行编写,支持 *NIX 内核的操作系统。不支持 Windows 操作系统。最早的时候关于操作系统只有这个,后来官方的社区维护了一个 Windows 的 Exporter ,再后来这个社区的 Exporter 也划归到官方来维护了。


Node Exporter 的官方地址是 https://github.com/prometheus/node_exporter 。当前最新版本是 v1.2.2 (2021.08.06 发布),建议大家在使用时选用最新版本,并且做好版本升级的准备。


Node Exporter 启动会通过 9100 端口来进行监控数据的暴露,这个端口也可以在启动的时候通过参数指定来修改。

安装

Node Exporter 支持多种安装运行方式,比如二进制运行、裸 Docker 运行 、 放在 Kubernetes 中运行。


这里我提供一下 二进制运行和 裸 Docker 运行的脚本


使用这个脚本可以以二进制的方式运行 Node Exporter ,并且提供日志和 pid 文件。


#!/bin/bash# version 1.0BASEPATH=/usr/local/prometheus/node_exporterLOG=$BASEPATH/logsnohup $BASEPATH/current/node_exporter --collector.textfile.directory=/tmp/metrics  --web.listen-address=:9100  >> $LOG/node_exporter.log  2>&1 & echo $! > $BASEPATH/run/node_exporter.pid
复制代码


另外也可以写成 SystemD 的守护进程。/usr/lib/systemd/system/node_exporter.service 文件内容如下:


Description=Node ExporterAfter=network.target
[Service]ExecStart=/usr/local/bin/node_exporter --collector.textfile.directory=/tmp/metrics --web.listen-address=:9100User=root
[Install]WantedBy=multi-user.target
复制代码


编写好这个文件以后,就可以使用 systemctl start node_exporter 来启动服务,并且使用 systemctl enable node_exporter 来设置开机自起。

收集指标

Node Exporter 提供了一个 --collector.<name> 的启动参数来打开一些指标的收集,也可以通过 --no-collector.<name> 的启动参数来关闭一些指标的收集。由于有一些指标是默认开启的(当前大约 类),所以可以使用 --collector.disable-defaults 参数先关闭所有的 默认采集指标,然后再使用 --collector.<name> 参数来逐个打开要采集的指标。


Node Exporter 在每个操作系统发行版上对指标的收集类型的支持也不同。下面的表列出了所有现有可以收集的指标类型和受支持的系统。


发布于: 4 小时前阅读数: 6
用户头像

耳东@Erdong

关注

还未添加个人签名 2020.05.24 加入

主要研究分享运维技术,专注于监控、CICD、操作系统、云原生领域,公众号【耳东学堂】,知识星球同名,坚持原创,希望能和大家在运维路上结伴而行 邮箱:erdong@mail.erdong.site

评论

发布
暂无评论
Prometheus Exporter (一)Node Exporter