专栏首页散尽浮华使用Zabbix服务端本地邮箱账号发送报警邮件及指定报警邮件操作记录

使用Zabbix服务端本地邮箱账号发送报警邮件及指定报警邮件操作记录

邮件报警有两种情况: 1)Zabbix服务端只是单纯的发送报警邮件到指定邮箱,发送报警邮件的这个邮箱账号是Zabbix服务端的本地邮箱账号(例如:root@localhost.localdomain),只能发送,不能接收外部邮件。 2)使用一个可以在互联网上正常收发邮件的邮箱账号(例如:xxx@163.com),通过在Zabbix服务端中设置,使其能够发送报警邮件到指定邮箱。 上面第2中使用外部邮箱发送报警邮件之前已经介绍了:分布式监控系统Zabbix-3.0.3-完整安装记录(5)-邮件报警部署。下面说下使用zabbix本地邮箱发送报警邮件的设置:

1)安装sendmail或者postfix

# yum install sendmail 
# service sendmail start 
# chkconfig sendmail on 

yum install postfix
service postfix start
chkconfig postfix on

CentOS 5.x     默认已经安装好sendmail
CentOS 6.x     默认已经安装好postfix
其中,sendmail和postfix只需要安装一个即可并开启服务即可。这里我选择的是使用sendmail

2)安装邮件发送工具mailx

# yum install mailx 
# mailx -V
--------------------------------------------------------------------------------------------
在centos5版本下yum安装的mailx版本太旧,尤其在使用外部邮件发送会有问题。这就需要编译安装高版本的xmail
# yum remove mailx        卸载系统自带的旧版mailx

下载mailx:
http://nchc.dl.sourceforge.net/project/heirloom/heirloom-mailx/12.4/mailx-12.4.tar.bz2
tar jxvf mailx-12.4.tar.bz2 
cd mailx-12.4
make 
make install UCBINSTALL=/usr/bin/install 
ln -s /usr/local/bin/mailx /bin/mail 
ln -s /etc/nail.rc /etc/mail.rc 
whereis mailx 
mailx -V 
--------------------------------------------------------------------------------------------

测试发送邮件,标题zabbix,邮件内容:zabbix test mail,发送到的邮箱:wangshibo@huanqiu.cn。
# echo "zabbix test mail" |mail -s "zabbix" wangshibo@huanqiu.cn              //注意:sendmail服务必须启动后才能成功发送邮件

3)在zabbix监控界面配置邮件报警

image.png

设置Zabbix用户报警邮箱地址

设置Zabbix触发报警的动作(事件源是触发器)

image.png

默认接收人:故障{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}

上面点击“新的“,配置如下:

最后测试下zabbix的邮件报警。任意关闭一台被监控主机的zabbix_agent

可以到报表->动作日志里去查看下监控邮件是否发送成功了。

 再开启这台主机的zabbix_agent服务,还会收到故障恢复的邮件。

---------------------------------------------------指定监控项的报警邮件设置--------------------------------------------------------- 比如说我只想要上线机器发出报警邮件,非上线机器:比如测试机、研发机只监控,不报警。

做法:专门设置一个上线的机器组,比如up,然后将上线机器放到这个up组内,在添加"动作"时的条件里选择这个up组。如下:

注意:上面计算方式里是"与/或",A and (B or C or ....)and N,这就说明必须满足A条件/D条件或者B/C/D/....中的一个时就报警

注意:将默认"Report problems to Zabbix administrators"监控报警项“禁用”了,否则,非上线机器的报警邮件也会发出来!禁用了就只会发出你设置的up组内的线上机器的报警邮件。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • zookeeper:分布式协调服务浅析

    由于之前了解一个分布式框架(dubbo)时,其中涉及到zookeeper,因此今天就先来大概的介绍一下zookeeper。zookeeper是一个用来管理大量的...

    挖掘大数据
  • 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET平台开发指南 - 分布式应用

    分布式系统         分布式系统(distributed system)是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透...

    魏琼东
  • 基于DotNet构件技术的企业级敏捷软件开发平台 AgileEAS.NET - 插件运行容器

         上一篇AgileEAS.NET之插件接口IModule中我们介绍了EAS.NET模块插件契约,在本文我们将介绍一下调用插件的运行容器,即平台。    ...

    魏琼东
  • SC和Storj——分布式存储技术哪家强?

    一句话概括项目 SC和Storj都是做基于区块链的去中心化存储。 SC和Storj具体运作方式 SC和Storj除算法略有不同外,其运作方式基本相同。存储数据的...

    企鹅号小编
  • Kubernetesr的Service Mesh(第7部分):让分布式跟踪变得简单

    在这篇文章中,我们将通过一个简单的例子来介绍一下Linkerd和Zipkin如何在Kubernetes(Google开源的容器集群管理系统)中协同工作以自动获得...

    Techeek
  • 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET - 服务定位器(SL)与AgileEAS.NET中的实现

            首先说一下 ,或许我是个懒汉,博客差不多已经一个月没有写了,给朋友们说声抱歉,最近发生了很多事,南方洪水呀洪水,北方热呀热,兰州遇到不知道多少年...

    魏琼东
  • 分布式缓存服务器设计原理

    1.数据是如何被分布到多个服务器上的?(一致性哈希算法) 假设有n台服务器, 计算这n台服务器的IP地址的哈希值, 把这些哈希值从小到大按顺时针排列组成一个“服...

    liulun
  • Hadoop--HDFS API编程封装

    HDFS是一个分布式文件系统,既然是文件系统,就可以对其文件进行操作,比如说新建文件、删除文件、读取文件内容等操作。下面记录一下使用JAVA API对HDFS中...

    汤高
  • 写在2018第一天:编程之路始于Git

    git是目前世界上使用最广泛的分布式版本控制系统,由大名鼎鼎的Linus花了两周时间写成,同时在2008年使用给git作为唯一版本库格式托管平台gitHub网站...

    企鹅号小编
  • 基于Kafka构建事件溯源模式的微服务

    微服务本身并不算什么新概念,它要解决的问题在软件工程历史中早已经有人提出:解耦、扩展性、灵活性,解决“烂架构”膨胀后带来的复杂度问题。

    RiboseYim

扫码关注云+社区

领取腾讯云代金券