Nginx Node 部署怎么配合 Prometheus 监控 Node 运行指标

酷瑶大大_9382

酷瑶大大_9382

2026-09-11

349人浏览

原创

Nginx与Node Exporter无隶属关系:Nginx是Web服务器,需通过vts模块或exporter暴露/metrics;Node Exporter采集宿主机系统指标;二者由Prometheus分别抓取、Grafana联动分析,实现应用层与系统层协同监控。

nginx node 部署怎么配合 prometheus 监控 node 运行指标

这个问题其实存在概念混淆。“Nginx Node”并不是一个标准术语——Nginx 是 Web 服务器/反向代理,本身不叫“Node”;而 Prometheus 生态中的 “Node Exporter” 是专门用于采集 Linux 主机(即物理机或虚拟机)系统级指标(CPU、内存、磁盘、网络等)的组件,和 Nginx 没有直接隶属关系。

先明确角色分工

• Nginx:负责处理 HTTP 请求,需暴露自身运行指标(如连接数、请求率、5xx 错误数)
• Node Exporter:运行在宿主机上,采集该机器的底层资源数据(比如 Nginx 进程所在服务器的 CPU 使用率、内存压力、磁盘 IO)
• Prometheus:分别抓取 Nginx 指标(通过 vts 或 exporter)和 Node Exporter 指标(默认 :9100/metrics),统一存储
• Grafana:可同时叠加展示 Nginx 应用层指标 + Node 主机层指标,做关联分析(例如:“5xx 突增时,是否伴随磁盘写满或 swap 使用飙升?”)

让 Nginx 暴露可观测指标(关键一步)

必须让 Nginx 输出 Prometheus 可读的 /metrics 数据,两种主流方式:

  • 推荐 nginx-module-vts(内嵌式):
    编译 Nginx 时添加 --add-module=/path/to/nginx-module-vts,配置中启用:
    vhost_traffic_status_zone;
    并开放两个 location:
    location /status { vhost_traffic_status_display; vhost_traffic_status_display_format html; }
    location /metrics { vhost_traffic_status_display; vhost_traffic_status_display_format prometheus; }
  • nginx-prometheus-exporter(代理式):
    确保 Nginx 已开启 stub_status(location /nginx_status { stub_status on; allow 127.0.0.1; })
    启动 exporter:./nginx-prometheus-exporter -nginx.scrape-uri http://127.0.0.1/nginx_status(默认监听 :9113/metrics)

验证:执行 curl http://your-nginx-ip/metrics 或 curl http://localhost:9113/metrics,看到形如 nginx_vts_server_requests_total{server="default",code="200"} 1428 的文本即成功。

部署 Node Exporter 并接入 Prometheus

Node Exporter 与 Nginx 通常部署在同一台服务器(或各自所在节点),它不监控 Nginx,而是监控这台机器本身:

Nginx Reverse Proxy
Nginx Reverse Proxy

配置 Nginx 反向代理,实现域名绑定。用户说“绑定域名”“配置 Nginx”“反向代理”时触发,将域名绑定到指定 IP:端口。

下载
  • 下载对应平台二进制(如 Linux amd64),解压后直接运行:./node_exporter(默认端口 9100)
  • 建议用 systemd 管理,确保开机自启、自动拉起
  • 在 Prometheus 的 prometheus.yml 中添加 job:
    - job_name: "node"<br>  static_configs:<br>  - targets: ["localhost:9100"]
  • 重启 Prometheus,访问 http://prometheus:9090/targets 确认两个 target(nginx 和 node)都为 UP 状态

在 Grafana 中联动分析 Nginx 与主机指标

导入通用面板后,可构建组合看板:

  • 左侧区域放 Nginx 指标:活跃连接数 nginx_vts_server_connections_active、5xx 错误率 rate(nginx_vts_server_requests_total{code=~"5.."}[5m]) / rate(nginx_vts_server_requests_total[5m])
  • 右侧区域放 Node 指标:CPU 使用率 100 - (avg by(instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)、根分区使用率 100 * (node_filesystem_size_bytes{mountpoint="/"} - node_filesystem_free_bytes{mountpoint="/"}) / node_filesystem_size_bytes{mountpoint="/"}
  • 设置告警规则时,可交叉引用:例如当 nginx_vts_upstream_fails_total > 100 且 node_memory_SwapFree_bytes 同时触发,说明上游失败可能由内存不足引发

这种分层监控(应用层 + 系统层)才是定位真实瓶颈的关键路径。不复杂但容易忽略。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

nginx node

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

457

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

980

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

3412

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

1116

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

1009

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

534

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

3156

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

5932

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

907

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
phpEnv手册
phpEnv手册

共0课时 | 0人学习

nginx手册
nginx手册

共0课时 | 0人学习

进程与SOCKET
进程与SOCKET

共6课时 | 0.5万人学习