当前位置: 首页 > news >正文

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

文章目录

  • 在 CentOS 7.9 上部署 node_exporter 并接入 Prometheus + Grafana 实现主机监控
  • 环境说明
  • node_exporter 安装与配置
    • 下载并解压 node_exporter
    • 创建 Systemd 启动服务
    • 验证服务状态
    • 验证端口监听
  • Prometheus 配置 node_exporter 监控项
    • 修改 prometheus.yml
    • 重新加载 Prometheus 配置
  • Grafana 配置展示监控图表
    • 添加 Prometheus 数据源
    • 导入主机监控面板
  • 总结


在 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_exporterLoaded: 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 实现数据可视化展示

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

相关文章:

  • PyMOL命令行和脚本
  • 精益数据分析(70/126):MVP迭代中的数据驱动决策与功能取舍
  • AI神经网络降噪 vs 传统单/双麦克风降噪的核心优势对比
  • 公网ip是固定的吗?动态ip如何做端口映射?内网ip怎么让外网远程访问?
  • 组态王通过开疆智能profinet转ModbusTCP网关连接西门子PLC配置案例
  • 学习BI---QuickBI介绍
  • ngx_http_scgi_module 技术指南
  • 问题 | 代码审查:函数是否包含返回语句
  • 调研函模板可参考,以无人机职业技能调研为例
  • 开源表单设计器FcDesigner配置多语言教程
  • 2024年ASOC SCI2区TOP,多机制群优化算法+多风场输电线路巡检中多无人机任务分配与路径规划,深度解析+性能实测
  • Easy PLC和IT7000触摸屏的无实物仿真调试
  • Rust 学习笔记:关于错误处理的练习题
  • JavaScript 中的五种继承方式进行深入对比
  • 【T2I】LoCo: Locally Constrained Training-Free Layout-to-Image Synthesis
  • Docker 运维管理
  • ipynb文件的一键访问(顺带启动jupyter)实现程序演示
  • IDC数据中心动力环境监控系统解决方案
  • DAY 30 模块和库的导入
  • 230. 二叉搜索树中第 K 小的元素
  • 解读|俄方称愿与乌方共同起草和平备忘录,特朗普多轮通话外交有效吗?
  • 专访|金七猫奖得主:以非遗为舟,在现实题材中疗愈与成长
  • 广东信宜一座在建桥梁暴雨中垮塌,镇政府:未造成人员伤亡
  • 墨西哥海军帆船纽约撞桥事故已致2人死亡19人受伤
  • 十年牢狱倒计时,一名服刑人员的期待与惶恐
  • 国内规模最大女子赛艇官方赛事在沪启航,中外41支队伍逐浪