前提:nginx需要1.10以后的版本支持。
一.首先安装nginx-module-vts模块,nginx_vts_exporter需要依赖nginx-module-vts模块。
下载编译官方版的 nginx-module-vtsshell& git clone git://github.com/vozlt/nginx-module-vts.git
二.关闭nginx,pkill -9 nginx,重新进行编译,加载nginx-module-vts模块./configure --prefix=/usr/local/nginx --add-module=nginx-module-vts
make && make install
三.nginx.conf配置文件里,http 层 和server 层分别加入
http {
vhost_traffic_status_zone;
vhost_traffic_status_filter_by_host on;
server {
vhost_traffic_status off;
location /status {
vhost_traffic_status_display;
vhost_traffic_status_display_format html;
}
}
}
配置建议:
-
1.打开vhost过滤: vhost_traffic_status_filter_by_host on; 开启此功能,在Nginx配置有多个server_name的情况下,会根据不同的server_name进行流量的统计,否则默认会把流量全部计算到第一个server_name上。 在不想统计流量的server区域禁用vhost_traffic_status,配置示例: server { ... vhost_traffic_status off; ... }
2.假如nginx没有规范配置server_name或者无需进行监控的server上,那么建议在此vhost上禁用统计监控功能。否则会出现“127.0.0.1”,hostname等的域名监控信息。
四.启动nginx,监控数据的查看安装完vts模块后,可以通过nginx status接口进行监控数据的查看,比如:http://127.0.0.1/status:
五.配置监控数据采集模块:nginx-vts-exporter
1.下载当前最新版本的软件包:
# wget -c https://github.com/hnlq715/nginx-vts-exporter/releases/download/v0.9.1/nginx-vts-exporter-0.9.1.linux-amd64.tar.gz
2.解压后运行:
# nginx-vts-exporter