centos下nginx加载nginx-module-vts实现流量监控

搭建方法

  • 1.安装nginx-module-vts模块
    • 1.1服务器未安装nginx
    • 1.2服务器已安装nginx并且正在运行中
  • 2.修改nginx配置
  • 3.监控界面及接口

1.安装nginx-module-vts模块

1.保证服务器下安装好nginx
2.服务器安装好git
3.在/usr/local/src目录下执行 git clone git://github.com/vozlt/nginx-module-vts.git
4.进入nginx目录,执行 ./configure --prefix=/usr/local/nginx --add-module=/usr/local/src/nginx-module-vts(如果需要with其他的模块,在–prefix后添加)

1.1服务器未安装nginx

在执行完以上操作后,直接执行make && make install安装nginx

1.2服务器已安装nginx并且正在运行中

1.在执行完以上操作后,执行make操作,编译后在nginx的objs文件夹里有编译后的文件
2.在已安装的nginx文件目录下,执行./nginx -s stop停止nginx
3.执行cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak对原文件进行备份
4.执行cp objs/nginx /usr/local/nginx/sbin命令,覆盖nginx

2.修改nginx配置

在nginx.conf的http下添加vhost_traffic_status_zone,在server里添加访问的页面及ip控制。修改的配置如下:

http {
	......
	vhost_traffic_status_zone;
	......
	server {
		......
		location /status {
		    vhost_traffic_status_display;
			vhost_traffic_status_display_format html;
			allow xxx.xxx.xxx.xxx;
			allow 127.0.0.1;
			deny all;
		}
		......
	}
}

保存后启动nginx

3.监控界面及接口

通过http://xx(nginx的ip地址+监听的端口)/status访问对应的界面,如下:
centos下nginx加载nginx-module-vts实现流量监控_第1张图片
traffic下可以查看实时的出口流量及入口流量

http://xx(nginx的ip地址+监听的端口)/status/format/json该地址可以获得json格式的数据,具体的地址可以在界面下方的JSON处点击查看
centos下nginx加载nginx-module-vts实现流量监控_第2张图片
在json的serverZone里能查询到对应的inBytes和outBytes

你可能感兴趣的:(运维相关)