zabbix实战应用-zabbix配置钉钉报

当我们把 zabbix 的基础建设构建完成之后,就能够对 Linux 服务器的一些基本项进行监控了,在 web 界面也可以看到相关问题的一些报警了,但是这样的报警显然是不够的,我们需要的是那种与实际工作常用工具相结合的报警,这样既容易发现告警,先显得比较高端,再加上一些基础的服务器信息以及告警项,做出对应的处理就非常容易了。

今天我们就来整理一下 zabbix 结合钉钉机器人的报警配置。

一、首先是钉钉客户端配置

1、建立一个钉钉群组。
2、添加一个机器人。

未分类

注意,这里要复制下来这个 wenhook 值,等会要用到的。

二、zabbix 服务器端配置

1、Zabbix 配置文件中查找”Alert”查看告警脚本存放路径。

[root@localhost ~]# vim /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/lib/zabbix/alertscripts       (455 行,默认的,不用修改)

2、进入配置中路径创建配置文件,并添加监听脚本。

[root@localhost ~]# cd /usr/lib/zabbix/alertscripts/

3、然后添加脚本。

[root@localhost alertscripts]# vim token.sh

#!/bin/bash
to=$1
subject=$2
text=$3
curl 'xxxxxxxxx'       #此处的 xxxxx 就是刚刚复制存留的 api 接口地址。
-H 'Content-Type: application/json' 
-d '
{"msgtype": "text",
"text": {
"content": "'"$text"'"
},
"at":{
"atMobiles":[
"'"$1"'"
],
"isAtAll":false
}
}'

三、配置执行文件权限与归属

[root@localhost alertscripts]# chown zabbix.zabbix token.sh
[root@localhost alertscripts]# chmod +x token.sh

切换至 zabbix 用户测试脚本是否执行成功。

bash  token.sh 11 22 33

如果钉钉已经有了提示消息,说明配置成功。

四、设置前端创建脚本及报警媒介

再添加以下 3 个参数,分别对应脚本需要的 3 个参数:收件人地址、主题、详细内容。

{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

未分类

五、创建动作

配置
--->动作
--->右上角触发器
--->创建动作
--->名称(钉钉)
--->新的触发条件(触发器示警度--->大于等于--->警告)
--->添加(上边出现了两条--->计算方式选和)
--->选择右边操作

未分类

--->步骤时间--->1000
--->标题(故障{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}

--->操作添加
--->步骤--->5 表示触发 5 次动作
--->步骤持续时间--->每隔 120 秒触发一次
--->告警发给 admin 用户
--->用”钉钉”媒介发送。  
--->点击小”add”添加选项,否则等于没写

未分类

点击添加之后
--->右边恢复操作,相当于服务正常之后的操作
--->标题改为--->恢复{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}

--->点击”新的”添加发送选项
--->添加群组
--->添加用户 Admin
--->仅送到--->钉钉
--->点击小”添加”添加选项,否则等于没写  
点击小 add 添加选项后再点击大 ADD 完成动作增加。

未分类

六、添加报警媒介

--->点击右上角用户头像
--->点击报警媒介
--->添加
--->类型--->钉钉
--->收件人--->要@的人的手机号
--->当启用时--->这个设置的是报警的时间设置
--->添加
--->然后直接点击更新

未分类

更新。

未分类

七、配置提示

--->点击右上角用户头像
--->选择正在发送消息
--->选中前端消息
--->下边的全选中,,更新。

未分类

测试
直接把监控的 nginx 服务器网卡断掉,然后等待报警!!!

未分类

现在再将网卡链接,看等会儿会是怎样的报警。

这样,一个非常给力好用的 zabbix 结合钉钉的报警就配置完成了。