zabbix自定义监控实现思路以及自定义监控某个端口的连接数
一 zabbix自定义监控实现思路
我在前面有写到:
实际上我们要想使用zabbix来监控一些服务的原理很简单,步骤分别是:
-
写一个脚本用于获取待监控服务的一些状态信息
-
在zabbix客户端的配置文件zabbix_agentd.conf中添加上自定义的“UserParameter”,目的是方便zabbix调用我们上面写的那个脚本去获取待监控服务的信息
-
在zabbix服务端使用zabbix_get测试是否能够通过第二步定义的参数去获取zabbix客户端收集的数据
-
在zabbix服务端的web界面中新建模板,同时第一步的脚本能够获取什么信息就添加上什么监控项,“键值”设置成前面配置的“UserParameter”的值
-
数据显示图表,这一步就很简单了,直接新建图形并选择上一步的监控项来生成动态图表即可
下面我将以“如何在zabbix中监控自定义端口的连接数”来举例说明
二 zabbix自定义监控某个端口的连接数
(1)zabbix客户端添加获取连接数的脚本:
1
2
|
[[email protected] ~] # cd /usr/local/zabbix/scripts
[[email protected] scripts] # vim 9080_port.sh
|
其内容如下:
1
2
3
|
#!/bin/sh netstat -an | grep 192.168.10.104:9080 | grep ESTABLISHED | wc -l
|
这个脚本很简单,就是获取9080端口已经建立的连接,并用“wc -l”来统计一共多少行
注:/usr/local/zabbix/scripts这个路径中的scripts目录本来是不存在的,是我自己新建的
(2)给脚本添加执行权限:
1
|
[[email protected] scripts] # chmod a+x 9080_port.sh
|
(3)修改zabbix_agentd配置文件,添加一个“UserParameter”:
1
|
[[email protected] scripts] # vim /usr/local/zabbix/etc/zabbix_agentd.conf
|
添加如下内容:
1
|
UserParameter=9080connectNum,/usr/local/zabbix/scripts/9080_port.sh |
注:这里的“9080connectNum”就是item key,不能跟已有的重复,并且后面需要使用
(4)重启zabbix_agentd:
1
|
[[email protected] scripts] # service zabbix_agentd restart
|
(5)zabbix服务端测试获取数据:
1
|
[[email protected] ~] # /usr/local/zabbix/bin/zabbix_get -s 192.168.10.104 -k 9080connectNum
|
输出如下:
1
|
587 |
注:上面的192.168.10.104就是指的客户端的IP
(6)zabbix的web界面中新建模板、监控项以及图形:
i)新建模板:
配置 –> 模板 –> 创建模板:
模版名称 :Template Port9080
ii)给该模板添加监控项:
打开该模板 –> 监控项 –> 创建监控项:
名称:9080端口连接数
键值:9080connectNum
其他随意
iii)添加图形:
打开该模板 –> 图形 –> 创建图形:
名称:9080端口连接数
监控项:添加上刚才创建的监控项
(7)最后完成之后效果如下:
到此,我们使用zabbix自定义监控一个端口的连接数的配置就完成了。当然,根据我上面提到的原理,使用zabbix来监控一些其他服务也将不再是难事了
本文转自 pangfc 51CTO博客,原文链接:http://blog.51cto.com/983836259/1855290,如需转载请自行联系原作者