文章目录
zabbix监控nginx状态
环境
主机名 | IP地址 | 角色 | 安装的软件 |
---|---|---|---|
zabbix | 192.168.179.100 | zabbix服务端 | zabbix_server+zabbix_agent |
wanf | 192.168.179.11 | nginx+zabbix客户端 | nginx+zabbix_agent |
前期准备
安装zabbix服务端与配置请阅读Zabbix监控服务一、服务端的安装与配置
安装zabbix客户端与监控配置请阅读Zabbix监控服务二、安装zabbix客户端与监控的配置流程
配置zabbix自定义监控请阅读Zabbix监控服务四、配置自定义监控
开启nginx状态页面
bash
//修改nginx配置文件,添加这一段
[root@wanf ~]# vim /usr/local/nginx/conf/nginx.conf
......
location /status {
stub_status on;
allow 192.168.179.0/24; //放行的ip,要放行本机和zabbix服务端
deny all;
}
......
//重启服务
[root@wanf ~]# systemctl restart nginx.service
访问测试
访问方法:http://server_ip/status
配置监控
配置zabbix自定义监控请阅读Zabbix监控服务四、配置自定义监控
脚本如下:
bash
[root@wanf script]# vim nginx_status.sh
[root@wanf script]# chmod +x nginx_status.sh
[root@wanf script]# cat nginx_status.sh
#!/bin/bash
if [ $1 == 'reading' ]; then
curl -s 192.168.179.11/status | awk 'NR==4{print $2}'
elif [ $1 == 'writing' ]; then
curl -s 192.168.179.11/status | awk 'NR==4{print $4}'
elif [ $1 == 'waiting' ]; then
curl -s 192.168.179.11/status | awk 'NR==4{print $6}'
fi
[root@wanf script]#
key如下:
bash
//定义key
[root@wanf ~]# vim /usr/local/etc/zabbix_agentd.conf
......
UserParameter=check_nginx[*],/script/nginx_status.sh $1
//测试key
[root@zabbix ~]# zabbix_get -s 192.168.179.11 -k check_nginx['reading']
0
[root@zabbix ~]# zabbix_get -s 192.168.179.11 -k check_nginx['writing']
1
[root@zabbix ~]# zabbix_get -s 192.168.179.11 -k check_nginx['waiting']
0
[root@zabbix ~]#
添加监控项
添加触发器
另外的writing和waiting数值的监控项和触发器添加方法类似