zabbix监控可以使用默认自带的键值来监控服务进程存活,本文已时间服务器ntp进程为例,监控进程存活,理论适用于所有进程。
使用的键值proc.num[<name>,<user>,<state>,<cmdline>]
格式说明:
<name>:进程名字,默认为"all processes"
<user>:运行该进程的用户,默认为"all users"
<state>:进程状态,默认是all,可以进一步设定比如run,sleep等
<cmdline>:模糊匹配
请确保监控端已安装agent,请将10.10.10.10替换成你自己的客户端地址
1、在服务端执行
由于ntpd服务是通过ntp用户执行的,所以这里运行该进程的用户就填写ntp
zabbix_get -s 10.10.10.10 -k 'proc.num[,ntp,,ntpd]'
|---|-------------------------------------------------------| | 1 | zabbix_get -s 10.10.10.10 -k 'proc.num[,ntp,,ntpd]' |
2、在Zabbix监控平台上配置监控项
3、在Zabbix监控平台上配置触发器
在问题表现形式中添加监控项,选择刚刚创建的监控项"ntp进程存活",配置结果<>1,<>1表示ntpd进程不是1的时候触发警告
恢复表达式配置方式与问题表现形式配置方式一样,唯一区别,恢复表达式配置结果=1,即ntpd进程等于1为正常
问题表现形式:{10.10.10.10:proc.num[,ntp,,ntpd].last()}<>1
恢复表达式:{10.10.10.10:proc.num[,ntp,,ntpd].last()}=1