nginx-exporter安装使用

时间:2023-03-08 18:59:50
nginx-exporter安装使用

一、没有vts的启动方式

   #nginx_exporter -telemetry.address=:9113 -nginx.scrape_uri="http://127.0.0.1:10000/nginx_status

   nginx_exporter -telemetry.address=:9113 -nginx.scrape_uri="https://xx.xx.xx.xx:18443" -insecure  #端口9113应该是nginx_exporter监听的端口,prometheus通过9113访问metrics,18443自己可以通过nginx.conf设置其他端口

  1.1、修改nginx.conf配置文件

server {
listen ;
..............................
location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1;
}
................................
}

  1.2nginx重新加载

    nginx -s reload

  1.3启动nginx-exporter

    nginx_exporter -telemetry.address=:9113 -nginx.scrape_uri="https://xx.xx.xx.xx:18443//nginx_status" -insecure

二、具有vts的启动方式

  nohup   ./${nginx-vts_path}/nginx-vts-exporter    -nginx.scrape_uri=https://xx.xx.xx.xx:18443/status/format/json   #端口18443应该是nginx监听的端口

   2.1查看nginx是否有加载模块nginx-module-vts,并拷贝configure arguments:后的字串

    nginx -V​

 2.2备份文件

    解压nginx-module-vts至指定目录,重新编译nginx

    cd  nginx源码

    ./configure   {前面拷贝的configure arguments参数}   --add_module=/nginx-module-vts

 2.3备份原有nginx文件

    cp nginx二进制文件为nginx.bak

      cp nginx源码/objs目录    现有Nginx目录下替换现有的nginx二进制文件

 2.3修改nginx.conf文件

http {
vhost_traffic_status_zone; # 添加
...
server {
...
location /status {
vhost_traffic_status_display; # 添加
vhost_traffic_status_display_format html; # 添加
}
}
}

  2.4重新加载nginx

    nginx -s reload

2.5安装nginx-vts-exporter 

    nohup ./${nginx-vts_path}/nginx-vts-exporter -nginx.scrape_uri=https://xx.xx.xx.xx:18443/status/format/json