` zabbix(八) | 听云轩

zabbix(八)

关于zabbix的邮件报警

Zabbix服务端设置邮件报警,当被监控主机宕机或者达到触发器预设值时,会自动发送报警邮件到指定邮箱。

在这里配置的思路是这样的:使用一个可以收发的邮件的邮箱,通过在zabbix服务端中设置,使其能够发送报警邮件到指定邮箱。(也就是从服务器指定发送邮箱——>管理员邮箱)

1、安装postfix环境

看这!!!

2、配置zabbix

AB5oOe.md.png

AB5OYt.md.png

关于这里,我们可以通过type选择媒介类型,可以是email(上图),此时需要配置SMTP服务器的相关信息,包括:

  • Smtp server:设置smtp服务器来处理传出的消息
  • SMTP server port:SMTP服务器的端口
  • SMTP helo:通常是域名
  • SMTP Email:此处输入的地址将被用作是发送消息的from地址。
  • Connection security:选择连接的安全级别,如果使用ssl/tls,需要设置smtp服务器的ssl证书
  • Authentication:选择认证级别

当然也可以是脚本:

AB5z6S.md.png

我们在zabbix配置文件中可以看见,zabbix的相关脚本信息都放在下面这个路径

1
AlertScriptsPath=/usr/lib/zabbix/alertscripts

所以我们在这个路径下创建一个mail.sh的脚本,这个脚本里的内容为:

ABI9mQ.png

其中包含几个变量,message(邮件信息),subject(邮件主题)这两个可以从zabbix的宏所传递的,我们在选择脚本作为媒介的时候,设置了三个宏:

  • {ALERT.SENDTO}:发给谁
  • {ALERT.SUBJECT}:主题
  • {ALERT.SUBJECT}:内容

然后分别对应我们的参数$ 1,$ 2,$ 3 。

此外将错误输出到/tmp/mailx.log文件中。

3、设置触发报警的动作,也就是触发器

ABo8Ej.md.png

比如说,我们创建一个当发现agent工作不正常的时候触发报警的trigger。

ABoJ5n.md.png

  • 关于condition,触发条件的话,可以查看官方文档

ABoN80.md.png

其中:

  • Default subject(邮件主题,也可以用默认的)

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

  • Default message(邮件内容,可以使用默认的)

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

我们在这里设置邮件所发送的对象。

ABoBb4.md.png

这里是problem恢复后的邮件信息,可以参考上面。

这时我们弄好了,可以看见我们所创建的东东。这个时候应该显示为disable我们点击一下让它变为enable开启状态(其中第二个为默认存在的)。

ABoy5R.md.png

4、配置接收者信息

ABIa0H.md.png

ABIDht.md.png

ABIs9P.png

  • send to:为所要发送的目的邮箱。

5、测试

我们将其中一台agent关闭。

ABog8x.md.png

然后查看出现的problem。

ABovqg.md.png

点击时间,我们可以查看详细的信息,包括邮件的发送情况

ABTSaj.md.png

这个时候,我们可以查看邮箱,看邮件信息。

ABTPGq.png

如果问题解决后,此时会发送recovery operation的内容,并且将状态从PROBLEM置为RESOLVED。

------ 本文结束 ------
您的支持将鼓励我继续创作