首页 » Monitor » Zabbix » Zabbix5.0监控ogg并自动拉起进程

Zabbix5.0监控ogg并自动拉起进程

 

我这里通过ggsci的info all来判断Status状态是否正常,如果状态是STOPPED、ABEND则触发钉钉告警,然后让zabbix自动拉起服务,当然此处可结合自身需求进行设置,例如:不包含RUNNING的状态则触发警告,只需要grep -v "RUNNING"即可。

在配置ogg监控时,请熟悉使用zabbix,熟悉相关工作原理,避免在配置的时候导致报错!

1、在ogg服务器上安装zabbix-agent

安装zabbix-agent建议直接使用官方rpm包方式(或国内镜像的rpm包)

2、修改zabbix-agent配置文件

zabbix-agent默认的配置文件在/etc/zabbix/zabbix_agentd.conf

我这里只修改两处,其他配置结合自身使用情况进行调整,当然你也可以只修改两处,其他配置项不修改。

添加以下一行内容,表示允许通过zabbix执行远程命令(因为我这里要通过zabbix远程启动ogg服务,所以开启,如你不需要则无需配置)

配置zabbix-server地址,其中10.10.10.10表示你当前zabbix-server的地址

3、配置zabbix用户权限

先给zabbix用户设置免密授权,因为我这里ggsci是通过oracle用户来执行的,如果不授权zabbix用户,则无法调用oracle用户来执行ggsci

4、自定义zabbix键值

新建一个自定的键,我这里定义为monitor.ogg,其中monitor.ogg名字可自行更改,后面的语句就是一个shell脚本,表示通过oracle用户来执行ggsci的info all命令,然后通过grep查看是否存在ABEND或STOPPED状态,注意:我这里监控的Group是EXTKF,你的不一定是这个名字,按需进行更改。

5、启动zabbix-agent

此时zabbix-agent就配置好了,如果开启了防火墙,请注意放行相关端口

6、配置zabbix-server,创建监控模板

在zabbix-server仪表盘中,创建ogg的监控模板,当然你也可以直接创建监控项而不配置模板

注意:此处键值monitor.ogg与之前在agent中配置的键一定要一致

配置触发器

{monitor.ogg:monitor.ogg.last()}<>0表示,执行sudo su - oracle -c 'echo "info all" | /u01/ogg/ggsci | grep "EXTKF" | egrep "ABEND|STOPPED" | wc -l'结果不等于0,则触发警告

图形配置

至此ogg监控就配置完成了,一旦ogg服务状态是STOPPED或ABEND时,则触发报警。

如果你只需要一个报警监控,那么后面的内容就无需看了,我这里只是以ogg作为例子,提供一个自定义键值的思路,如果你理解其中的原理,那么便可举一反三!!!

钉钉报警设置请参考:https://blog.whsir.com/post-6090.html

7、自动启动ogg服务

在zabbix-server仪表盘中,配置→动作

告警操作

主题:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!

消息:在消息首行添加关键词,此关键词和钉钉上的关键词需保持一致,可以使用中文名称
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

恢复操作

恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!

告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}

原文链接:Zabbix5.0监控ogg并自动拉起进程,转载请注明来源!

0