Zabbix 自定义监控项目配置

引言

前面说到以 Zabbix 做为运维监控系统,在实际的运维工作中,我们肯定有自己需要要监控的自定义项目, 但默认提供的模板并没有提供相关监控项,这时我们就要自己添加自定义的监控项目了。
这里我们以添加自定义监控 Nginx Status 的项目来说明 Zabbix 添加自定义监控项目的步骤。

1 配置 Nginx 开启 nginx status

Nginx 配置文件中增加如下配置:


location /nginx-status {
	stub_status on;
	access_log   off;
	allow 127.0.0.1;
	allow 192.168.56.0/24;
	deny all;
}	

Nginx 状态的详细解释说明,参见之前一篇文章:理解 nginx http_stub_status 相关参数

2 配置 nginx status 监控脚本

参考脚本地址:
nginx_status

下载后根据自己的情况修改 nginx status 的 URL(Port/PATH)

测试脚本能正常获取数据。

3 增加 Zabbix 自定义监控项目的配置文件

配置文件一般放在/etc/zabbix/zabbix_agentd.d/下,   参考配置文件地址:
userparameter_nginx.conf

内容如下:


UserParameter=nginx.accepts,/etc/zabbix/scripts/nginx_status accepts
UserParameter=nginx.handled,/etc/zabbix/scripts/nginx_status handled
UserParameter=nginx.requests,/etc/zabbix/scripts/nginx_status requests
UserParameter=nginx.connections.active,/etc/zabbix/scripts/nginx_status active 
UserParameter=nginx.connections.reading,/etc/zabbix/scripts/nginx_status reading
UserParameter=nginx.connections.writing,/etc/zabbix/scripts/nginx_status writing
UserParameter=nginx.connections.waiting,/etc/zabbix/scripts/nginx_status waiting

添加配置文件后,重启 Zabbix Agent,然后使用 zabbix_get 测试是否能获取数据,比如:


[root@linux-node1 ~]# zabbix_get -s 192.168.56.11 -p 10050 -k "nginx.active"
1
[root@linux-node1 ~]# zabbix_get -s 192.168.56.11 -p 10050 -k "nginx.accepts"
2246493

4 在 Zabbix Web 界面上添加自定义监控的 item/graph 等等

这步就不截图说明了。