zabbix 监控nginx菜鸟版

来源:互联网 发布:福彩3d2010年开奖数据 编辑:程序博客网 时间:2024/06/05 02:25

原理:zabbix监控nginx是根据nginx的Stub Status模块,抓取Stub Status提供nginx的数据,然后拆分首先要检查一下nginx 是否安装http_stub_status_modulerpm安装的用以下命令检查

nginx -V

源码安装的用以下命令检查

/usr/local/nginx/sbin/nginx -V

我这里是rpm安装的,请看图

nginx检查http_stub_status_module

如果没有安装,网上找一下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

看我的访问结果

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.的错误

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

zabbix导入模板

然后使用这个模板

zabbix选择主机

zabbix添加模板

监控图

zabbix监控nginx图

如果不清楚请加群


QQ交流群:136351212
查看原文:http://www.phpsong.com/2063.html
0 0
原创粉丝点击