•  作者简介:我是团团儿,是一名专注于云计算领域的专业创作者,感谢大家的关注
  •  座右铭:云端筑梦,数据为翼,探索无限可能,引领云计算新纪元
  •  个人主页:团儿.-CSDN博客

目录

前言:

Zabbix监控升级:

实验目标:通过zabbix实现邮件报警+微信报警

1.关闭zabbix-server上的邮件服务,安装mailx

2.编辑mailx的配置,指定收件邮箱和用户密码

3.zabbix-server编写邮件报警脚本

4.zabbix web控制台关联邮件报警脚本

微信报警

1.申请企业微信

2.编写python微信报警脚本,并修改企业id和用户密码

3.zabbix web关联

修改邮件通知内容

1.配置--动作--Report problems to Zabbix administrators

2.修改后,更新


前言:

随着企业对系统稳定性和实时监控的需求日益增加,Zabbix作为一种开源监控解决方案,被广泛应用于各种规模的企业中。然而,传统的邮件报警方式在处理紧急情况时存在延迟,因此,集成微信报警成为了一种更高效的选择。

那么接下来让我们一同探索!


Zabbix监控升级:

       在IT运维领域,保障系统的稳定性和对潜在问题进行实时监控是企业运营不可或缺的一环。 随着这一需求的增加,Zabbix作为一种开源监控解决方案,因其强大的功能和灵活性,被广泛应用于不同规模的企业中。 然而,传统的邮件报警方式常会因为各种原因导致延迟,这在紧急情况处理上显然不够理想。 为此,集成微信报警变成了一种更高效的选择。 

       邮件报警虽然简单易行,但在实际应用中常常面临诸如网络延迟、邮件服务器问题等挑战,这些问题都可能导致报警信息不能及时送达。 因此,将微信报警集成到Zabbix系统中显得尤为重要。 微信作为一个广泛使用的即时通讯工具,在中国尤其流行,其消息推送速度快、覆盖面广,能有效提升报警信息的传递效率。

那么,如何在Zabbix中如何实现邮件报警和微信报警呢?


实验目标:通过zabbix实现邮件报警+微信报警

实验拓扑:192.168.8.5  zabbix  server端

                  192.168.8.6  zabbix  客户端

邮件报警

1.关闭zabbix-server上的邮件服务,安装mailx

systemctl stop postfix

systemctl disable postfix
yum -y install mailx

2.编辑mailx的配置,指定收件邮箱和用户密码

vim /etc/mail.rc

添加:

保存退出

测试邮件:echo 123 | mail -s test 邮件地址

若找不到则为无ssl


3.zabbix-server编写邮件报警脚本

yum -y install dos2unix

cd /usr/lib/zabbix/alertscripts/
vim email_notice.sh

添加:

#!/bin/bash

#export UTF-8

FILE=/tmp/mail.txt

echo "$3" > $FILE

dos2unix -k $FILE

/bin/mail -s "$2" $1 < $FILE

保存退出

赋予执行权:chmod +x email_notice.sh


4.zabbix web控制台关联邮件报警脚本

管理--报警媒介类型--关闭已有的email报警--右上角“创建媒体类型”

--“名称,类型(脚本),脚本名称(必须写对),参数添加3个:{ALERT.SENDTO}、{ALERT.SUBJECT}、{ALERT.MESSAGE}”

--更新

右上角--小人(用户)--报警媒介--“类型(邮件脚本,收件人:真实邮箱地址)”--添加--更新

配置触发器


微信报警

1.申请企业微信

我的企业--复制企业ID

应用管理--创建应用--名称:报警机器人--选择部门--创建应用--点开报警机器人

--复制Secret


2.编写python微信报警脚本,并修改企业id和用户密码

复制weixin.py到zabbix-server的/usr/lib/zabbix/alertscripts/下

cd /usr/lib/zabbix/alertscripts/
vim weixin.py

修改:

corpid='wwb51a90f544c78346' #企业ID

appsecret='ptoSa9IMqSOinnOJ2Bq6-4i_EBKJbZ8tcG6R6TlhknU'   #报警机器人密码

agentid=1000002 #报警机器人ID

保存退出

 赋予执行权:chmod 777 weixin.py

格式转换:dos2unix -k weixin.py

赋权weixin.log:

touch /tmp/weixin.log

chown zabbix:zabbix /tmp/weixin.log

测试发送微信:./weixin.py  YuJie  test1 123456789


3.zabbix web关联

管理--报警媒介类型--右上角“创建媒体类型”

--“名称(微信报警),类型(脚本),脚本名称(必须写对),参数添加3个:{ALERT.SENDTO}、{ALERT.SUBJECT}、{ALERT.MESSAGE}”

--更新

右上角--小人(用户)--报警媒介--“类型(微信报警,收件人:微信账号)”--添加--更新

修改邮件通知内容

1.配置--动作--Report problems to Zabbix administrators

  操作:修改默认标题,修改消息内容  

主题:Problem: {EVENT.NAME}故障{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}


2.修改后,更新

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐