云上的天涯

导航

zabbix添加自定义监控项目

 

 

 

在zabbix里添加一个自定义监控项目,简单做个笔记,怕忘了

首先需要定义 zabbix_agentd.conf  中的 UnsafeUserParameters

修改为

UnsafeUserParameters=1

然后我们还需要定义包含的自定义配置文件目录

Include=/etc/zabbix/zabbix_agentd.conf.d/

最后保存  zabbix_agentd.conf 配置文件

然后编写自定义监控脚本,这里我以一个简单的监控8080端口脚本为例子

#!/usr/bin/python
import socket
def check_port():
    ss = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    ss.settimeout(2)
    try:
        ss.connect(('localhost', 8080))
        ss.close()
        return 1
    except socket.error:
        return 2

x = check_port()
print(x)

如果端口是存在的存活的则返回1否则返回2

执行脚本,目前本机上的8080端口是存在的,会返回1

准备工作基本已经做完,我们开始添加自定义监控

首先需要把脚本放到zabbix的脚本文件夹下面,我这里的路径是

/etc/zabbix/monitor_scripts

大家可以自定义

然后最重要的来了,定义自定义监控配置文件

该配置文件位置在刚才的 zabbix_agentd.conf 里配置的包含目录下面,我这里就是

/etc/zabbix/zabbix_agentd.conf.d

进入到目录下后,我们开始定义监控项目文件

内容如下

UserParameter=st8080,/etc/zabbix/monitor_scripts/8080.py

红色的部分为你自定义监控的 键值 该值是在zabbix里添加监控项目时候需要用的到也就是下面的红框中的值,后面接的是脚本路径,别忘了中间有逗号间隔,这个配置文件就搞定了

 

 

 

然后我们保存文件后,需要重启下zabbix-agetn客户端

systemctl restart zabbix-agent

然后我我们去server端去试下看能不能取到key

zabbix_get -s 10.0.30.72 -p 1024 -k st8080

以上命令在server服务器上执行,依次是客户端IP 端口 定义的键值,结果如下

可以看到我们可以正常获取的键值,到这里基本没啥问题了,就可以去添加自定义监控项目了

打开zabbix控制台

点开配置-主机

然后找到需要添加自定义监控的机器,比如我这里是10.0.30.72

点项目

然后点右上角创建项目

 

 

除了键值需要和配置文件了定义的一致以外,其他默认就可以

最后点存档即可。

我们还需要添加触发器来报警

依次点击配置-主机-选择主机-触发器

点右上角创建触发器

点开后依次需要天上触发器名称,这个随便填,表达式,表达式需要点右边的选择来生成

具体的表达式生成如下

我们刚才自定义项目名称是status8080,这里点选择后我们就选择status8080,N选择2,因为报警触发条件是等于几的是报警,我们脚本定义返回2的时候是端口不通,所以这里写2触发报警

点插入,最后点存档即可。

添加图形也很简单

至此完结。

 

posted on 2018-11-19 15:24  云上的天涯  阅读(378)  评论(0编辑  收藏  举报