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

文章目录

  • [在 CentOS 7.9 上部署 node_exporter 并接入 Prometheus + Grafana 实现主机监控](#在 CentOS 7.9 上部署 node_exporter 并接入 Prometheus + Grafana 实现主机监控)
  • 环境说明
  • [node_exporter 安装与配置](#node_exporter 安装与配置)
  • [Prometheus 配置 node_exporter 监控项](#Prometheus 配置 node_exporter 监控项)
    • [修改 prometheus.yml](#修改 prometheus.yml)
    • [重新加载 Prometheus 配置](#重新加载 Prometheus 配置)
  • [Grafana 配置展示监控图表](#Grafana 配置展示监控图表)
  • 总结

在 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

bash 复制代码
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 配置文件:

bash 复制代码
vim /usr/lib/systemd/system/node_exporter.service

写入以下内容:

ini 复制代码
[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

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

bash 复制代码
systemctl daemon-reexec
systemctl daemon-reload
systemctl enable node_exporter.service --now

验证服务状态

bash 复制代码
systemctl status node_exporter.service

输出应该为:

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

验证端口监听

bash 复制代码
ss -tunlp | grep 9100

应看到如下输出:

复制代码
LISTEN 0      128    *:9100     *:*     users:(("node_exporter",...))

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


Prometheus 配置 node_exporter 监控项

修改 prometheus.yml

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

yaml 复制代码
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 配置

bash 复制代码
# 方法一:重启 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 实现数据可视化展示

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

相关推荐
计算机毕设定制辅导-无忧学长5 小时前
Grafana 与 InfluxDB 可视化深度集成(二)
信息可视化·数据分析·grafana
云游11 小时前
大模型性能指标的监控系统(prometheus3.5.0)和可视化工具(grafana12.1.0)基础篇
grafana·prometheus·可视化·监控
运维自动化&云计算1 天前
Centos虚拟机硬盘报错,根分区满,已用显示为负40G
linux·运维·centos
qq_232045572 天前
非容器方式安装Prometheus和Grafana,以及nginx配置访问Grafana
nginx·grafana·prometheus
测试开发Kevin2 天前
详解grafana k6 中stage的核心概念与作用
测试工具·压力测试·grafana
夜莺云原生监控2 天前
Prometheus 监控 Kubernetes Cluster 最新极简教程
容器·kubernetes·prometheus
SRETalk2 天前
Prometheus 监控 Kubernetes Cluster 最新极简教程
kubernetes·prometheus
TLucas2 天前
在CentOS 7上将PostgreSQL数据库从默认路径迁移到自定义目录
linux·运维·postgresql·centos
川石课堂软件测试3 天前
JMeter并发测试与多进程测试
功能测试·jmeter·docker·容器·kubernetes·单元测试·prometheus
大明湖畔的小鳄鱼3 天前
docker安装centos
docker·容器·centos