nginx开启vts监控

此流程针对已有在运行的nginx未安装vts模块

检查nginx编译信息

  • 若没有nginx环境变量,和管理员确认nginx安装路径,到sbin目录执行
  • 下图所示可以看到没有vts模块,需要手动安装

  • 检查9966端口号是否被占用,被占用的话和管理员确认换个端口
[root@test home]# netstat -ntlp|grep 9966
[root@test home]# 

编译nginx包添加vts模块

下载对应版本包

  • nginx源码包下载地址:http://nginx.org/download/
  • vts模块包下载地址:https://github.com/vozlt/nginx-module-vts/tags

编译nginx,添加vts模块

# 上传包到服务器(服务器可连接广域网的话直接wget即可)
# 解压
tar -zxvf nginx-1.17.10.tar.gz nginx-module-vts-0.1.17.tar.gz
# 将vts解压后的目录移到需要放的目录(目录根据实际情况修改)
mv nginx-module-vts-0.1.17 /opt
# 编译nginx
cd nginx-1.17.10
## 生成makefile,注意需要附加上之前查询出的编译信息,在末尾添加上vts模块路径
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module --with-pcre --add-module=/home/lua-nginx-module-0.10.9rc7 --add-module=/home/ngx_devel_kit-0.3.0 --with-stream --add-module=/opt/nginx-module-vts-0.1.17
## make命令执行构建
make
## 查看构建完成后的编译信息,看是否有vts模块
[root@test nginx-1.17.10]# ./objs/nginx -V
nginx version: nginx/1.17.10
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module --with-pcre --add-module=/home/lua-nginx-module-0.10.9rc7 --add-module=/home/ngx_devel_kit-0.3.0 --with-stream --add-module=/opt/nginx-module-vts-0.1.17

修改nginx配置文件

  • 主配置文件备份后修改

cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak

vi /usr/local/nginx/conf/nginx.conf

http段中添加vhost_traffic_status_zone;

  • 添加vts_monitor.conf

cd /usr/local/nginx/conf/conf.d

vi vts_monitor.conf

server {
    listen  9966;
    location /nginx_vts_status {
        vhost_traffic_status_display;
        vhost_traffic_status_display_format html;
    }
}

替换并重启nginx

# 备份并替换原有的nginx命令(路径根据实际情况修改)
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
cp -f ./objs/nginx /usr/local/nginx/sbin
# 重启nginx
nginx -s quit
nginx
# 检查采集端口
curl http://x.x.x.x:9966/nginx_vts_status

回滚方案

  1. 将备份的/usr/local/nginx/sbin/nginx.bak回滚
  2. 将备份的/usr/local/nginx/conf/nginx.conf.bak回滚
  3. 删除/usr/local/nginx/conf/conf.d/vts_monitor.conf
  4. 重启nginx

nginx -s quit

nginx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值