您的位置:首页 > 运维架构 > Nginx

zabbix 监控nginx菜鸟版

2016-05-25 12:00 597 查看
原理:zabbix监控nginx是根据nginx的Stub Status模块,抓取Stub Status提供nginx的数据,然后拆分

首先要检查一下nginx 是否安装http_stub_status_module

rpm安装的用以下命令检查

nginx -V
源码安装的用以下命令检查/usr/local/nginx/sbin/nginx -V我这里是rpm安装的,请看图



如果没有安装,网上找一下nginx平滑添加模块

agent机子开始配置nginx_status

nginx添加配置vi /usr/local/nginx/conf/nginx.conf
location /nginx_status
{
stub_status on;
access_log   off;
allow 127.0.0.1;
allow 192.168.171.22;  #(zabbix服务器的IP地址,一般是内网地址,当然也可以不加)
deny all;
}
把上面的代码放带可以ip访问的server里
我的nginx直接有这个代码不用修改
用ip访问一下
http://192.168.171.22/nginx_status
看我的访问结果



解释一下上面的结果
Active connections: 2 #对后端发起的活动连接数
server accepts #nginx 总共处理了23个连接
handled #成功创建了23次握手
requests #总共处理了120请求
Reading:0 #nginx读取客户端的header数
Writing: 1 #nginx 返回给客户端的header数
Waiting: 1 #nginx 请求处理完成,正在等待下一请求指令的连接

添加agentd监控nginx的脚本

脚本的内容就是访问http://192.168.171.22/nginx_status的结果拆分
脚本内容我共享出来
nginx_status.sh
这个脚本我放到了/etc/zabbix/scripts/目录下
nginx_status.conf
放到agent的配置目录下,也可以放到agent配置文件里
我放到/etc/zabbix/zabbix_agentd.d目录里(推荐)
也可以放到 /etc/zabbix/zabbix_agentd.conf
在服务端测试一下zabbix_get -s 192.168.171.22 -k custom.nginx.connections.waiting发现ZBX_NOTSUPPORTED: Unsupported item key.的错误



打开
vi /etc/zabbix/zabbix_agentd.conf
把参数UnsafeUserParameters修改成1
UnsafeUserParameters=1
重启一下agent服务器service zabbix-agent restart在执行zabbix_get -s 192.168.171.22 -k custom.nginx.connections.waiting发现
sh: /etc/zabbix/scripts/nginx_status.sh: 权限不够



修改一下nginx_status.sh的权限chmod 755 /etc/zabbix/scripts/nginx_status.sh在测试一下就成功了

模板导入到zabbix web端

zabbix_template.xml



然后使用这个模板






监控图



如果不清楚请加群

QQ交流群:136351212
查看原文:http://www.phpsong.com/2063.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: