第一、安装邮件发送工具mailx

这里我选择的是mailx,所以的关闭其他的邮件发送工具

service sendmailstop #关闭
   chkconfig sendmailoff #禁止开机启动
   service postfixstop
   chkconfig postfixoff

执行安装mailx的命令:yum install mailx

第二、配置Zabbix服务端外部邮箱

打开文件vi /etc/mail.rc 如果mail.rc文件没有,就手动创建 内容如下:

set sendcharsets=iso-8859-1,utf-8
     set from=xxx@139.com

set smtp="smtps://smtp.139.com:465"

     set smtp-auth-user=xxx@139.com
     set smtp-auth-password=xxx
     set smtp-auth=login
     set ssl-verify=ignore
     set nss-config-dir=/etc/pki/nssdb

第三、测试邮件是否可以发出

echo"zabbix test mail" |mail -s "zabbix" yyy@163.com

#这时候,邮箱yyy@163.com会收到来自xxx@163.com的测试邮件

第四、编写发送邮件脚本

进入下面路径:/usr/local/zabbix/share/zabbix/alertscripts

创建sendmail.sh文件,内容如下

#!/bin/bash

to=$1
subject=$2
file="/tmp/mail$RANDOM"
echo $3 > $file

sed -i -e 's/ //g' -e 's/\r/\n/g' $file

date "+%F %T" >> /usr/local/zabbix/share/zabbix/alertscripts/sendmail.log
echo "$to" "$subject" >> /usr/local/zabbix/share/zabbix/alertscripts/sendmail.log
cat "$file" >> /usr/local/zabbix/share/zabbix/alertscripts/sendmail.log

cat "$file" | /bin/mail -s "$subject" "$to"
rm -f $file

上面的这个三个参数是接收从web页面中传递过来的,$1:收件人邮箱地址;$2:邮件标题;$3:邮件内容

为什么我们会在这个路径下面创建这个脚本呢,这是在我们的zabbix_server.conf文件中配置的

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts

所以你不想将这个脚本放在这个目录下面,需要修改服务端的配置文件中的AlertScriptsPath的值

第四、配置web页面

4.1、创建媒体类型

点击创建媒体类型

添加以下3个参数,分别对应sendmail.sh脚本需要的3个参数:收件人地址、主题、详细内容
      {ALERT.SENDTO}
      {ALERT.SUBJECT}
      {ALERT.MESSAGE}

如果在3.0中不添加这三个参数会报错,因为在3.0以后zabbix允许自定义参数了,所以不会默认传递参数,在2.0的时候会默认传递三个参数,所以在3.0如果不写这三个参数会报错。

4.2、给用户添加报警媒介

在这以Admin用户为例 管理—》用户—》点击Admin

点击Admin

4.3、创建动作

填写动作选项

除了自己填写一个名称以外,其余的都默认就好了。当然也可以修改成中文:参考如下

默认接收人:故障{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}
 已启用:打钩

填写条件选项

填写操作详细信息

解释:默认的步骤是1-1,也即是从1开始到1结束。一旦故障发生,就是执行sendEmail.sh脚本发生报警邮件给Admin用户和zabbix administrator组。假如故障持续了1个小时,它也只发送一次。如果改成1-0,0是表示不限制.无限发送 间隔就是默认持续时间60秒。那么一个小时,就会发送60封邮件。

到这我们的邮件报警配置就完成了,这是只要我们设置的触发器触发,就会自动给我发送报警邮件。

测试邮件报警

我将zabbix自带的模板中的对可用内存的监控中的触发器的临界值改为大于0,进入模板列表

点击触发器

点击修改

保存以后 我将每一分钟收到一份报警邮件 内容如下:

参考文章:http://blog.csdn.net/hao134838/article/details/57568332

zabbix邮件报警设置的更多相关文章

  1. linux中Zabbix邮件报警设置配置步骤

    使用外部邮箱账号发送报警邮件设置 配置Zabbix服务端外部邮箱 vi /etc/mail.rc #编辑,添加以下信息 set from=xxx@163.com smtp=smtp.163.com s ...

  2. Zabbix邮件报警设置方法

    实现目的: 在Zabbix服务端设置邮件报警,当被监控主机宕机或者达到触发器预设值时,会自动发送报警邮件到指定邮箱. 具体操作: 以下操作在Zabbix监控服务端进行 备注:Zabbix监控服务端 操 ...

  3. zabbix邮件报警设置(加密)

    邮件设置如下 端口号选择465

  4. zabbix邮箱报警设置&问题汇总

    zabbix邮件报警部署! Zabbix监控服务端.客户端都已经部署完成,被监控主机已经添加,Zabiix监控运行正常,通过查看Zabbix监控服务器,可以了解服务器的运行状态是否正常,运维人员不会时 ...

  5. Zabbix邮件报警配置

    一.安装sendmail或者postfix yum install sendmail #安装 service sendmail start #启动 chkconfig sendmail on #设置开 ...

  6. Zabbix 邮件报警示例

     Zabbix 邮件报警示例: 1.编辑 mail.rc 文件添加默认的邮箱配置 # vi /etc/mail.rc set from=1234567@qq.com set smtp=smtp.qq. ...

  7. zabbix 邮件报警(五)

    一.sendEmail配置zabbix邮件报警 1.下载sendEmail: wget http://caspian.dotconf.net/menu/Software/SendEmail/sendE ...

  8. Ubuntu16.04 + Zabbix 3.4.7 邮件报警设置

    部署了Zabbix,需要配置邮件报警,在网上找了一些教程,大多是是用的CentOS + Zabbix 2.x版本的,而且还要写脚本,感觉太麻烦了,所以自己结合其他文章摸索了一套配置方法. 先说一下环境 ...

  9. Zabbix邮件报警-->Email

    Version:3.0.1 邮件报警有两种media 1.Email zabbix发送报警邮件到指定smtp服务器(使用系统自带的sendmail,发送邮箱是zabbix服务器的本地邮箱账号) 再由s ...

随机推荐

  1. 虚拟主机、VPS以及云主机的区别和对比

    对于很多需要建网站的朋友来说,虚拟主机是必须要了解的基础知识.虚拟主机相对于VPS与云主机来说出现的较早,也是被大多数站长所了解的主机.很多人容易将这三者混淆,弄不清楚三者的联系与区别.那么虚拟主机. ...

  2. dede标签:定义文件夹

    相关函数: 文件\include\taglib\arclist.lib.php第7行 function lib_arclist(&$ctag,&$refObj)

  3. shell 实现主板测试

    初接触shell,只能需要用到什么功能现学先用了.本文总结一下完成测试程序当中遇到的技巧和问题. 01. 变量生存期的问题,在函数中的变量无法在其他地方使用,在函数中只能使用在函数前定义的全局变量: ...

  4. 单词拼写检查之cutoff距离

    前言 cutoff是一个比较冷门的概念,相比于DP经典算法的编辑距离,cutoff距离只局限于自然语言处理领域.提出cutoff距离的起因很简单,因为经典的编辑距离无法很好地衡量在字符串搜索过程中的编 ...

  5. Java多线程之线程的创建

    好久没有更博客了,最近一直在忙工作的事情.现在终于空下来了,这2天会抓紧时间整理多线程和socket,把JavaSE结束掉. 关于多线程,首先会涉及到哪些东西呢?首先要了解线程,为什么要使用线程,线程 ...

  6. atom中开发vue常用插件

    atom: 开发利器,界面友好,配色出色,好用的插件众多. language-vue: 这个是首推,因为它就是为vue而生的呀,支持很多vue里的提示.在空的vue页面敲tem,vue模板的提示就自动 ...

  7. 【转】fread函数详解

    “fread”以二进制形式,从文件读出数据. 语法1:[a,count]=fread(fid,size,precision) 语法2:[a,count]=fread(fid,size,precisio ...

  8. 【转】Awk 命令学习总结、AWk命令系列学习(linux shell)

    前面的话 学习linux 的同人,都知道linux shell文本处理能力非常强大.有一组强大的文本处理工具:grep,sed,awk . 其中grep 经常用作查找匹配文本.sed用作文本编辑替换. ...

  9. SpringBoot整合Redis、ApachSolr和SpringSession

    SpringBoot整合Redis.ApachSolr和SpringSession 一.简介 SpringBoot自从问世以来,以其方便的配置受到了广大开发者的青睐.它提供了各种starter简化很多 ...

  10. (三)surging 微服务框架使用系列之我的第一个服务(审计日志)

    前言:前面准备了那么久的准备工作,现在终于可以开始构建我们自己的服务了.这篇博客就让我们一起构建自己的第一个服务---审计日志. 首先我们先创建两个项目,一个控制台的服务启动项目,一个业务的实现项目. ...