10分钟搞定Zabbix监控平台告警推送到钉钉群
Zabbix的安装与部署可以参考之前的文章
- CentOS8.5下安装部署开源监控系统Zabbix 6.0LTS
- CentOS7一键安装Zabbix Agent 6.0并实现自动注册
以及钉钉机器人的创建不再详细描述
1、下载并安装PrometheusAlert
代码语言:javascript复制https://github.com/feiyu563/PrometheusAlert
mkdir /opt/PrometheusAlert
unzip PrometheusAlertLinux.zip -d /opt/PrometheusAlert/
cd /opt/PrometheusAlert/
cp zabbix /usr/lib/zabbix/alertscripts/zabbixclient
chmod 755 /usr/lib/zabbix/alertscripts/zabbixclient
chown zabbix:zabbix /usr/lib/zabbix/alertscripts/zabbixclient
/usr/lib/zabbix/alertscripts/zabbixclient -h
(图片可点击放大查看)
设置PrometheusAlert开机自启动
代码语言:javascript复制vi /etc/rc.local
加入如下一行
nohup /opt/PrometheusAlert/PrometheusAlert &
chmod x /etc/rc.d/rc.local
然后手动启动PrometheusAlert
nohup /opt/PrometheusAlert/PrometheusAlert &
firewall-cmd --permanent --zone=public --add-port=8080/tcp
firewall-cmd --reload
(图片可点击放大查看)
2、修改触发器显示选项
用表情符号显示,是为了让告警更直观
(图片可点击放大查看)
3、Zabbix上创建告警媒介类型
类型为脚本
相关参数参考PrometheusAlert官方文档进行填写
(图片可点击放大查看)
(图片可点击放大查看)
创建后可以先测试一下机器人
4、添加用户
例如yuanfan
(图片可点击放大查看)
告警媒介选上一步创建的PrometheusAlert类型
(图片可点击放大查看)
5、配置触发器动作中消息模板
- 先配置触发器动作
(图片可点击放大查看)
(图片可点击放大查看)
- 操作——操作细节——消息模板如下
## [Zabbix平台告警信息](https://zabbix.walkingcloud.cn)
--------------------------------------------------------
##### <font color="#FF0000">{TRIGGER.NAME} </font>
--------------------------------------------------------
##### <font color="#FF0000">【故障发生时间】</font>:{EVENT.DATE} {EVENT.TIME}
##### <font color="#FF0000">【告警级别】</font>:{TRIGGER.SEVERITY}
##### <font color="#FF0000">【故障前状态】</font>:{ITEM.LASTVALUE}
##### <font color="#FF0000">【故障事件ID】</font>:{EVENT.ID}
##### <font color="#FF0000">【故障主机IP】</font>:{HOST.IP}
##### <font color="#FF0000">【故障主机名】</font>:{HOST.NAME}
##### <font color="#FF0000">【故障时长】</font>:{EVENT.AGE}
##### <font color="#FF0000">【故障是否确认】</font>:{EVENT.ACK.STATUS}
--------------------------------------------------------
##### <font color="#F56C6C">事件状态:{EVENT.STATUS}</font>
(图片可点击放大查看)
- 恢复操作——操作细节——消息模板如下
## [Zabbix监控平台告警信息](https://zabbix.walkingcloud.cn)
--------------------------------------------------------
##### <font color="#67C23A">{TRIGGER.NAME} 已经恢复 </font>✅
--------------------------------------------------------
##### <font color="#02b340">【故障恢复时间】</font>:{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
##### <font color="#02b340">【告警级别】</font>:{TRIGGER.SEVERITY}
##### <font color="#02b340">【故障前状态】</font>:{ITEM.LASTVALUE}
##### <font color="#02b340">【故障主机IP】</font>:{HOST.IP}
##### <font color="#02b340">【故障主机名】</font>:{HOST.NAME}
##### <font color="#02b340">【故障时长】</font>:{EVENT.AGE}
##### <font color="#02b340">【故障是否确认】</font>:{EVENT.ACK.STATUS}
--------------------------------------------------------
##### <font color="#F56C6C">事件状态:{EVENT.STATUS}</font>
(图片可点击放大查看)
- 更新操作——操作细节——消息模板如下
## [Zabbix监控平台告警信息](https://zabbix.walkingcloud.cn)
--------------------------------------------------------
##### <font color="#67C23A"> {USER.FULLNAME} 已经确认故障原因 </font>
--------------------------------------------------------
##### <font color="#FF0000">【故障确认时间】</font>:{ACK.DATE} {ACK.TIME}
##### <font color="#FF0000">【告警级别】</font>:{TRIGGER.SEVERITY}
##### <font color="#FF0000">【故障前状态】</font>:{ITEM.LASTVALUE}
##### <font color="#FF0000">【故障主机IP】</font>:{HOST.IP}
##### <font color="#FF0000">【故障主机名】</font>:{HOST.NAME}
##### <font color="#FF0000">【故障时长】</font>:{EVENT.AGE}
##### <font color="#FF0000">【故障原因】</font>:{ACK.MESSAGE}
##### <font color="#FF0000">【故障是否确认】</font>:{EVENT.ACK.STATUS}✅
--------------------------------------------------------
##### <font color="#F56C6C">事件状态:{EVENT.STATUS}</font>
(图片可点击放大查看)
6、触发告警及效果展示
例如192.168.31.127上/boot分区写满测试
代码语言:javascript复制dd if=/dev/zero of=/boot/test.iso count=1 bs=1024M
df -PTh
(图片可点击放大查看)
(图片可点击放大查看)
(图片可点击放大查看)
web界面上确认故障时的效果
(图片可点击放大查看)
(图片可点击放大查看)
(图片可点击放大查看)
告警恢复时钉钉告警效果