Monitor nginx for Prometheus
nginx vts and lua 的安装
前置条件
- 源码安装 nginx
安装
1###下载 2wget https://github.com/simpl/ngx_devel_kit/archive/v0.3.0.tar.gz 3tar xf v0.3.0.tar.gz 4wget https://github.com/openresty/lua-nginx-module/archive/v0.10.9rc7.tar.gz 5tar xf v0.10.9rc7.tar.gz 6 7wget https://github.com/vozlt/nginx-module-vts/archive/v0.1.15.tar.gz 8## 解压 9tar xf v0.1.15.tar.gz 10## 切换到ngin的源码目录 11cd ../nginx-1.13.7 12./configure [参数] --add-module=/opt/nginx-module-vts-0.1.15 13 14make //编译完,在objs目录下有一个nginx执行文件,不要make install,否则就是覆盖安装; 15mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old cp objs/nginx /usr/local/nginx/sbin/nginx 16make upgrade //替换老的nginx进程 17#再次执行:/usr/local/nginx/sbin/nginx -V 将会显示新的nginx的版本及编译的参数。
修改nginx配置文件并且重启nginx
1http { 2 vhost_traffic_status_zone; 3 4 ... 5 6 server { 7 8 ... 9 10 location /status { 11 vhost_traffic_status_display; 12 vhost_traffic_status_display_format html; 13 } 14 } 15}
安装nginx-vts-exporter
1# 这是一个由Golang开发的exporter,直接下载二进制使用 2 wget https://github.com/hnlq715/nginx-vts-exporter/releases/download/v0.7/nginx-vts-exporter-0.7.linux-amd64.tar.gz 3 tar xf /nginx-vts-exporter-0.7.linux-amd64.tar.gz 4
启动
1cd nginx-vts-exporter-0.7.linux-amd64 2nohup ./nginx-vts-exporter \ 3--nginx.scrape_uri=http://192.168.1.232:9146/ngx_status/format/json &
检查
1netstat -ntlp | grep 9913 2----- 3tcp 0 0 :::9913 :::* LISTEN 4418/./nginx-vts-ex 4----- 5curl http://192.168.1.232:9913/metrics