zabbix详解(二)—— zabbix故障自愈

今天继续给大家介绍Linux运维相关知识,本文主要内容是zabbix的故障自愈。

在上文zabbix的使用中,我们自定义了一个可以监控85端口jar服务的监控项。今天,我们就尝试正式使用该监控项,并定义相对应的触发器,最终实现邮件报警功能。及在监控到客户端服务失效后,尝试重启服务,进行初步的自动恢复。

注:文中涉及到的文件目录均为自己限定的目录。

一、创建监控项

下面,我们开始创建监控项,输入监控项的名称、其键值内容为我们在zabbix的使用
一文监控项自定义中(注:zabbix配置),agent配置文件中定义的键值名称,中括号里面是我们的参数,结果如下所示:

二、创建触发器 

接下来,我们来创建触发器,进入管理——主机——触发器页面,点击右上角的“创建触发器”,可以进入创建触发器的页面,我们输入触发器的名称,我们可以输入触发器的名称,其问题表达式及恢复表达式的值可以点击右面的“添加”,其会自动弹出条件对话框,选择刚刚我们创建的监控项,并写入结果,如下所示:

​ 

三、准备自愈脚本

自愈脚本就是在触发了触发器之后根据设置好的动作,远程执行的操作,重启服务。

#!/bin/bash
#这里可替换为你自己的执行程序,其他代码无需更改

#启动你的进程
nohup java -server -Xms850M -Xmx850M -jar /opt/projects/xxx.jar --spring.profiles.active=test --server.port=85 >> /usr/local/zabbix/xxx.log 2>&1 &

以上全部脚本,别忘了赋予执行权限
cd /usr/local/zabbix/scripts
chmod +x * 

四、创建脚本

接下来,我们来创建脚本,进入管理——脚本页面,点击右上角的“创建脚本”,可以进入创建脚本的页面:

由于zabbix默认是以zabbix的用户运行的,而zabbix是一个普通用户,在默认情况下,没有执行命令的权限,因此,我们要进行提权操作。所以,我们在命令的前面有一个sudo命令。
此外,在zabbix客户端的/etc/sudoer文件中,我们还要对zabbix用户的提权操作进行授权。在该文件中,添加一行:

zabbix  ALL=(ALL:ALL) NOPASSWD:ALL

五、创建动作

接下来,我们来创建动作,进入配置——动作——Trigger actions页面,点击右上角的“创建动作”,可以进入创建动作的页面:

条件选择刚创建的触发器 

 然后选择操作

在操作添加步骤1---发送email报警

 然后添加操作步骤2---执行重启脚本

然后添加恢复操作---故障恢复后发送email通知

 最终结果:

 六、效果检验

最后,我们来检验一下我们配置的结果,在zabbix客户端设备上,关闭85服务,结果如下所示:

 仪表板警告:

邮件警告;

 

 恢复过程:

 恢复邮件:

 服务自动恢复,这说明我们的配置成功!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值