监控Nginx服务器
由于官方没有提供Nginx直接可用的exporter,Nginx的监控要相对复杂一些。这里使用的是三方提供nginx-vts-exporter。
安装Nginx
由于nginx-vts-exporter依赖于Nginx的nginx-module-vts模块,所以这里需要重新编译下Nginx。
- 下载对应软件包
1
2
3$ cd /root
$ wget 'http://nginx.org/download/nginx-1.9.2.tar.gz'
$ git clone git://github.com/vozlt/nginx-module-vts.git - 编译安装Nginx
1
2
3
4
5$ apt-get install libreadline-dev libncurses5-dev libpcre3-dev libssl-dev perl make build-essential
$ tar xzvf nginx-1.9.2.tar.gz
$ cd nginx-1.9.2
$ ./configure --add-module=/root/nginx-module-vts
$ make && make install - 修改Nginx配置 (/usr/local/nginx/conf/nginx.conf)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15http {
vhost_traffic_status_zone;
...
server {
...
location /status {
vhost_traffic_status_display;
vhost_traffic_status_display_format html;
}
}
} - 验证nginx-module-vts模块
1
访问 http://IP/status
exporter metrics
安装nginx-vts-exporter
1 | $ wget -O nginx-vts-exporter-0.5.zip https://github.com/hnlq715/nginx-vts-exporter/archive/v0.5.zip |
创建Systemd服务
1 | $ vim /etc/systemd/system/nginx_vts_exporter.service |
启动nginx-vts-exporter
1 | $ systemctl start nginx_vts_exporter.service |
修改prometheus.yml,加入下面的监控目标:
nginx-vts-exporter默认的抓取地址为http://IP:9913/metrics