zabbix 发送报警邮件

5人阅读 评论(0) 收藏 举报
分类:

实验条件:

Zabbix监控服务器、客户端都已经部署完成,被监控主机已添加完成,Zabbix监控运行正常。

实现目的:

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

概念补充:

什么是MTA?什么是MUA?

通俗的说MUA就是用户使用的客户端,而MTA则是真正发送邮件的发送进程,MUA编写的邮件最终也交由MTA发送至目标端。

mailx即为负责查看、编写邮件和向MTA发送邮件的MUA。

Sendmail和postfix即为负责邮件在网络上传输的MTA,将邮件从一个MTA传送至另一个MTA。

标注:使用zabbox服服务端本地邮箱账号发送邮件,需要安装两个软件达到报警邮件转发至指定邮箱。Sendmail或postfix(两个软件各选择一个,但不能同时运行)和mailx邮件客户端。

配置网络yum源参考教程:

http://www.cnblogs.com/zoulongbin/p/5773330.html


Zabbix服务器操作


1、  安装sendmail或postfix (邮件传送代理MTA),本教程使用sendmail软件。

(标注:如果直接使用外部邮箱发送邮件可以不需要配置sendmail或postfix,直接把这两个软件关掉,直接跳到第3步:配置mail即可实现)

[root@ssticentos65 ~]# yum -y install sendmail                #在线yum安装sendmail

[root@ssticentos65 ~]# /etc/init.d/sendmail start            #启动sendmail服务

[root@ssticentos65 ~]# /etc/init.d/sendmail status          #查看sendmail启动情况

sendmail dead but subsys locked                                          #sendmail进程锁住,原因是postfix服务启动导致sendmail服务进程锁住,需要关闭postfix服务。

sm-client (pid  1759) is running...

[root@ssticentos65 ~]# /etc/init.d/postfix stop                #暂停postfix服务提示失败,原因是postfix进程正在使用,需要使用kill命令杀掉postfix进程

Shutting down postfix:                                     [FAILED]

[root@ssticentos65 ~]# /etc/init.d/postfix status                #查看postfix服务可以查看到进程号

master (pid  1647) is running...

[root@ssticentos65 ~]# kill -9 1647                                     #杀掉postfix服务进程号

[root@ssticentos65 ~]# /etc/init.d/postfix status                #查看postfix状态

master dead but pid file exists

[root@ssticentos65 ~]# chkconfig postfix off                      #设置postfix开机不启动

[root@ssticentos65 ~]# /etc/init.d/sendmail stop               #暂停sendmail服务

Shutting down sm-client:                                   [  OK  ]

Shutting down sendmail:                                    [FAILED]

[root@ssticentos65 ~]# /etc/init.d/sendmail start                 #启动sendmail服务

Starting sendmail:                                         [  OK  ]

Starting sm-client:                                        [  OK  ]

[root@ssticentos65 ~]#


2、安装邮件发送工具mailx 。(邮件用户代理MUA)

[root@ssticentos65 ~]# yum -y install mailx                     #在线安装mailx


3、  配置mail

[root@ssticentos65 ~]# vim /etc/mail.rc

set  from=lg1871212539@sina.com        #新浪注册的个人邮箱,用于zabbi服务端转发邮件到指定邮箱

set  smtp=smtp.sina.com                       #填写新浪发送邮箱服务器地址smtp

set  smtp-auth-user= lg1871212539      #新浪个人邮箱用户

set  smtp-auth-password=lg123456      #新浪个人邮箱密码

set  smtp-auth=login                           #登录


4、测试邮件能否发送

#发送一份邮件到1873714157@qq.com 这个QQ邮箱(个人申请的QQ测试邮箱)

[root@ssticentos65 ~]# echo "test" | mail -s 'test linux'  1873714157@qq.com 


5、编写邮件发送脚本sendmail.sh

[root@ssticentos65 ~]# cd /usr/local/zabbix/share/zabbix/alertscripts/         #进入zabbix默认存放脚本路

[root@ssticentos65 alertscripts]# vim sendmail.sh                                               #编写发送邮件脚本

#!/bin/bash

messages=`echo $3 | tr '\r\n' '\n'`

subject=`echo $2 | tr '\r\n' '\n'`

echo "${messages}" | mail -s "${subject}" $1 >>/tmp/sendmail.log 2>&1

[root@ssticentos65 ~]# chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh                       #sendmail.sh脚本修改所属用户和用户组

[root@ssticentos65 ~]# chmod 755 /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh                                     #sendmail脚本赋予执行权限

[root@ssticentos65 ~]# ls -l /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh                                                 #查看sendmail.sh脚本信息

-rwxr-xr-x. 1 zabbix zabbix 154 Jan  7 05:12 /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

[root@ssticentos65 ~]# vim /usr/local/zabbix/etc/zabbix_server.conf                                                                          #配置zabbix_server.conf配置文件

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts                                                                                      #这个修改成sendmail.sh脚本存放路径

[root@ssticentos65 ~]# su zabbix                                                                                                                                  #切换zabbix用户

sh-4.1$ /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh 1873714157@qq.com "test linux" "test"                  #zabbix用户执行sendmail.sh脚本看是否有权限

 

Zabbix后台web介面配置


1、管理 ----  报警媒介类型 -----  创建媒介类型。

 


2、名称可以随便自己定义 ----- 类型选择脚本 ----- 脚本名称输入上一步编写的发送邮件的脚本名称 ----

再添加以下3个参数,分别对应脚本需要的3个参数:收件人地址、主题、详细内容:

{ALERT.SENDTO}

{ALERT.SUBJECT}

{ALERT.MESSAGE}


3、管理 ---- 用户 ----- 选择admin用户。(自己创建一个用户也可以)

 


4、报警媒介 ---- 添加。


5、类型输入刚刚创建的报警媒介类型sendmail脚本 --- 输入个人邮箱用于接收报警邮件 --- 启动打勾 ---- 添加。


6、选择更新。

 


7、权限设置(管理员用户不用修改,权限默认所有服务器,如果要分类权限需要在用户组进行控制)


8、配置 ---- 动作 ---- 创建动作。

 


9、动作 ---- 名称自定义 --- 设置一条新的触发条件 ---- 启用 ---- 添加。(触发条件需要根据实际情况设置)

触发器   似      is unreachable for 5 minutes      #根据主机触发器  Template App Zabbix AgentZabbix agent on {HOST.NAME} is unreachable for 5 minutes  设置,主要监测zabbix_agentd客户端连接情况。


10、定义操作。

 

 

默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!

默认信息:

告警主机IP地址:{HOST.CONN}

告警主机:{HOSTNAME1}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}


11、定义恢复操作。

 

默认接收人:恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!

恢复信息:

告警主机IP地址:{HOST.CONN}

告警主机:{HOSTNAME1}

告警时间:{EVENT.DATE} {EVENT.TIME}

告警等级:{TRIGGER.SEVERITY}

告警信息: {TRIGGER.NAME}

告警项目:{TRIGGER.KEY1}

问题详情:{ITEM.NAME}:{ITEM.VALUE}

当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}


12、测试。

[root@ssticentos65 alertscripts]# /etc/init.d/zabbix_agentd stop              #暂停zabbix_agentd客户端服务

 

 

 




from :https://www.cnblogs.com/zoulongbin/p/6420239.html

查看评论

解决zabbix 报警邮件以附件形式发送

1、yum install dos2unix 2、修改sendmail.sh #!/bin/sh #export.UTF-8 FILE=/tmp/mailtmp.txt echo...
  • u010603691
  • u010603691
  • 2016-03-11 12:49:46
  • 2326

Zabbix邮件报警设置(已解决邮件内容为附件的问题)

环境 系统:CentOS7 Zabbix版本:Zabbix3.4.4 安装邮件发送工具mailx 因为此处选择了mailx作为邮件发送工具,所以关闭其他自带的邮件服务,在安装zabbix的服务...
  • outman1023
  • outman1023
  • 2018-01-29 21:16:32
  • 324

12.zabbix学习笔记:zabbix监控之邮件报警

zabbix监控之邮件报警在zabbix的使用中,最重要的一点就是完善的报警机制,作为监控平台,需要时刻关注机器和服务的运行状态,更重要的是发现故障之后需要及时的报警给相关人员,早点发现问题,将隐患消...
  • linux_player_c
  • linux_player_c
  • 2016-11-23 17:37:22
  • 6404

Zabbix 报警邮件内容带附件解决方法

安装zabbix之后,设置邮件脚本报警的时候,发送的报警内容变成了tcmime.1278.1278.1724.bin或ATT00001.bin。 yum -y install dos2unix ...
  • wuapeng
  • wuapeng
  • 2017-08-16 15:55:25
  • 308

zabbix通过python脚本发告警邮件

python脚本为敏捷开发脚本,在zabbix监控也起到重要作用,以下是使用python脚本发送告警邮件配置方法。 脚本如下: #!/usr/bin/python #coding:utf-8 impo...
  • Hu_wen
  • Hu_wen
  • 2017-01-16 11:47:57
  • 3569

Zabbix3.2邮件告警python脚本

Zabbix自动化监控QQ交流群:9888359 欢迎喜欢交流的朋友加入! 一、概述及环境要求 1、概述 zabbix监控也起到重要作用,以下是使用python脚本发送告警邮件配置方法。之前使用过se...
  • xiegh2014
  • xiegh2014
  • 2017-06-18 18:18:50
  • 3713

Zabbix邮件报警设置方法

说明:Zabbix监控服务端、客户端都已经部署完成,被监控主机已经添加,Zabiix监控运行正常。实现目的:在Zabbix服务端设置邮件报警,当被监控主机宕机或者达到触发器预设值时,会自动发送报警邮件...
  • aiqixiao1015
  • aiqixiao1015
  • 2016-01-21 10:23:00
  • 1329

zabbix 警告发邮件(新手版)

①首先检查有下发邮件的的两个软件 sendmail和mailx 如果安装请跳过此步 没有安装执行两个命令 yum -y install mailx-12.4 yum -y install sendma...
  • a454213722
  • a454213722
  • 2016-06-03 12:00:03
  • 4215

Zabbix发送带附件的邮件

Zabbix告警由于内容主体有诸多限制,很难传达所有的告警信息,可以通过添加附件的方式将详细信息发送给接收人,比如说要发送的文件存在apache文件服务器中,这个文件内容每隔一段时间会变动,我们可以将...
  • u012062455
  • u012062455
  • 2017-03-15 13:31:16
  • 805

zabbix入门之使用QQ邮箱接受报警信息

首先说明我使用的是3.2版本的zabbix既然要发邮件到QQ邮箱报警,那么在centos7上就肯定需要安装发送邮件的软件了 需要两个软件用来实现发送邮件[02:19:46]# history |gr...
  • qq_34829953
  • qq_34829953
  • 2017-08-16 17:44:03
  • 1326
    个人资料
    持之以恒
    等级:
    访问量: 3722
    积分: 220
    排名: 35万+