nginx-module-vts监控访问状态模块
前言
本文带你深入了解如何安装更强大的nginx-module-vts模块,以此来监控Nginx的运行状态和流量情况并且保证服务稳定性。
一、nginx-module-vts模块简介
nginx-module-vts(全称 Virtual Host Traffic Status Module)是一个开源的第三方 Nginx 模块,旨在为 Nginx 提供类似商业版 Nginx Plus 的实时监控能力。它通过嵌入 Nginx 内核,采集虚拟主机、上游服务器及缓存等维度的运行状态数据。
二、安装nginx-module-vts
2.1 下载模块
#从 GitHub 上以“压缩包”的形式下载 nginx-module-vts 项目的全部源代码。 wget https://github.com/vozlt/nginx-module-vts/archive/refs/heads/master.zip -O nginx-module-vts-master.zip #解压 unzip nginx-module-vts-master.zip mv nginx-module-vts-master /usr/local/

2.2 编译Nginx并添加模块
# 安装依赖环境 yum -y install gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel # 配置编译参数,添加vts模块 cd /opt/nginx-1.20.2 # 你的nginx解压的目录(不是安装目录) ./configure --add-module=/usr/local/nginx-module-vts-master/ # 在原参数基础上添加 # 编译 make # 关闭服务 systemctl stop nginx # 备份旧版本 cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.backup # 替换为新编译的二进制文件,因为添加了模块 cp /opt/nginx-1.20.2/objs/nginx /usr/local/nginx/sbin/nginx # 重启服务 systemctl start nginx #重启服务

2.3 配置Nginx.conf
vim /usr/local/nginx/conf/nginx.conf
http {
# 添加共享内存区域配置
vhost_traffic_status_zone;
# 启用按主机名统计(当有多个server_name时很重要)
vhost_traffic_status_filter_by_host on;
server {
listen 80;
server_name localhost;
# 状态监控端点
location /status {
vhost_traffic_status_display;
vhost_traffic_status_display_format html;
}
}
}


2.4 重启nginx服务并访问页面
# 重启服务 systemctl restart nginx # 访问页面 http://10.8.0.10/status

三、nginx-module-vts 的作用
nginx-module-vts 的主要作用是为 Nginx 提供全方位的实时监控能力,可以清晰掌握服务器的运行状态。
具体来说,它可以:
实时采集数据:监控每个网站域名、上游服务器及缓存区域的连接数、请求量、流量和响应状态码等关键指标。
可视化展示:通过内置的简洁状态页面,直观地查看各项数据。
简单来说,它就像是Nginx的“体检仪表盘”,可以及时发现性能瓶颈和定位问题。
总结
nginx-module-vts功能比stub_status模块更强大,Nginx监控方案的选择应根据实际需求和环境复杂程度来决定。
- 如果只需要基本的状态监控,并且不想重新编译Nginx,那么stub_status模块足以满足需求。
- 如果需要详细的监控数据,那么nginx-module-vts模块是更好的选择,虽然它需要重新编译Nginx。
到此这篇关于nginx-module-vts监控访问状态模块的文章就介绍到这了,更多相关nginx-module-vts监控内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!


最新评论