在 CentOS 7.9 上部署 node_exporter 并接入 Prometheus + Grafana 实现主机监控

发布于:2025-05-20 ⋅ 阅读:(11) ⋅ 点赞:(0)


在 CentOS 7.9 上部署 node_exporter 并接入 Prometheus + Grafana 实现主机监控

在现代的系统监控方案中,Prometheus + Grafana 是被广泛采用的组合。本文将介绍如何在 CentOS 7.9 系统上部署 node_exporter,结合 Prometheus 进行指标采集,并通过 Grafana 进行可视化展示,实现主机资源的全面监控。

环境说明

项目 说明
操作系统 CentOS Linux release 7.9.2009 (Core)
node_exporter 版本 v1.9.1
Prometheus 版本 看专栏
Grafana 版本 看专栏
部署用户 root

node_exporter 安装与配置

下载并解压 node_exporter

cd /data/bag
wget https://github.com/prometheus/node_exporter/releases/download/v1.9.1/node_exporter-1.9.1.linux-amd64.tar.gz
tar xf node_exporter-1.9.1.linux-amd64.tar.gz
mv node_exporter-1.9.1.linux-amd64 ../app/node_exporter

创建 Systemd 启动服务

编辑 systemd 配置文件:

vim /usr/lib/systemd/system/node_exporter.service

写入以下内容:

[Unit]
Description=node_exporter
After=network.target

[Service]
Type=simple
ExecStart=/data/app/node_exporter/node_exporter \
  --web.listen-address=0.0.0.0:9100 \
  --web.telemetry-path=/metrics \
  --log.level=info \
  --log.format=logfmt
Restart=always

[Install]
WantedBy=multi-user.target

保存后执行以下命令使服务生效并设置开机启动:

systemctl daemon-reexec
systemctl daemon-reload
systemctl enable node_exporter.service --now

验证服务状态

systemctl status node_exporter.service

输出应该为:

● node_exporter.service - node_exporter
   Loaded: loaded (/usr/lib/systemd/system/node_exporter.service; enabled)
   Active: active (running) ...

验证端口监听

ss -tunlp | grep 9100

应看到如下输出:

LISTEN 0      128    *:9100     *:*     users:(("node_exporter",...))

至此,node_exporter 已成功运行,并在本机的 9100 端口提供监控数据。


Prometheus 配置 node_exporter 监控项

修改 prometheus.yml

编辑 prometheus.yml 配置文件,新增 node_exporter 的 job 配置:

scrape_configs:
  - job_name: 'node_exporter'
    static_configs:
      - targets:
          - '192.168.1.100:9100'
          - '192.168.1.101:9100'
          - '192.168.1.102:9100'
          
  - job_name: 'node_exporter_shanghai'
    static_configs:
      - targets:
          - '10.1.0.1:9100'
          - '10.1.0.2:9100'

说明:

  • 192.168.1.100 替换为你部署 node_exporter 的主机 IP 地址。
  • 可添加多个目标实现多机采集。

重新加载 Prometheus 配置

# 方法一:重启 Prometheus
systemctl restart prometheus

# 方法二:通过 Web API 热加载
curl -X POST http://localhost:9090/-/reload

Grafana 配置展示监控图表

添加 Prometheus 数据源

  • 登录 Grafana Web 界面(默认 http://:3000)
  • 进入 Configuration > Data Sources
  • 选择 Prometheus,填写地址如:http://localhost:9090 或 Prometheus 实际访问地址
  • 保存并测试

导入主机监控面板

在 Grafana 导入以下官方仪表盘模板之一:

  • ID: 1860 - Node Exporter Full
  • 导入方式:Dashboard > Import > 填写 ID > 选择数据源 > 导入

完成后即可看到 CPU、内存、磁盘、网络等主机资源指标的可视化图表。


总结

通过上述步骤,我们实现了:

  • 在 CentOS 7.9 上成功部署 node_exporter
  • 配置 Prometheus 定时抓取主机监控指标
  • 通过 Grafana 实现数据可视化展示

这一方案适用于中小型服务器集群的性能监控场景,具有部署简单、组件清晰、社区支持良好等优点,是很多运维监控体系的首选方案。


网站公告

今日签到

点亮在社区的每一天
去签到