Prometheus 抓取 Nginx 指标
Prometheus 抓取 Nginx 运行时指标,主要有以下方法:
- Nginx 通过自己的
stub_status
页面 (需要with-http_stub_status_module
模块支持) 暴露出了一些 Nginx 运行时的指标,较为简单,在 Prometheus 中对应的 Metrics 也少。nginx_exporter
主要就是获取stub_status
中内建的指标。 - 可以通过
nginx-vts-exporter
监控 Nginx 更多的指标,但nginx-vts-exporter
依赖于 Nginx 编译安装是添加的第三方模块nginx-module-vts
来实现,指标更为丰富。建议使用此种监控方式。
环境信息
- Centos 7
- Nginx stable 1.24.0
- nginx-vts-exporter v0.10.3
- nginx-module-vts v0.2.2
安装配置 nginx-vts-exporter 和 nginx-module-vts 来监控 Nginx Metrics
Nginx 编译安装 nginx-module-vts 模块
Nginx 编译安装 `nginx-module-vts` 模块Nginx 安装了 nginx-module-vts
后,可以通过以下配置暴露运行时的指标
vhost_traffic_status_zone; |
重启 Nginx 后,访问 http://localhost:8081/status
即可查看到 Nginx 运行时的指标
安装 nginx-vts-exporter
wget https://github.com/hnlq715/nginx-vts-exporter/releases/download/v0.10.3/nginx-vts-exporter-0.10.3.linux-amd64.tar.gz |
创建 systemd
管理配置文件 /usr/lib/systemd/system/nginx-vts-exporter.service
|
启动服务,默认监听端口为 9913
systemctl enable --now nginx-vts-exporter |
浏览器访问 localhost:9913/metrics
即可看到 nginx-vts-exporter
暴露出来的 Metrics
之后 Prometheus 可通过 9913
端口抓取监控数据。