zabbix3.4实现sendEmail邮件报警
一、安装软件
wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
创建目录
mkdir /usr/local/bin
解压软件
tar zxf sendEmail-v1.56.tar.gz -C /usr/src
进入目录
cd /usr/src/sendEmail-v1.56
复制文件,并设置权限
cp -a sendEmail /usr/local/bin
chmod +x /usr/local/bin/sendEmail
安装组件
yum install perl-Net-SSLeay perl-IO-Socket-SSL -y
进入zabbix自定义的指定目录
可以查看zabbix_server.conf配置文件AlertScriptsPath变量是如何定义的。
cd /usr/local/zabbix/alertscripts/
编辑脚本
cat sendmail.sh
#! /bin/bash
#
to=$1
subject=$2
body=$3
/usr/local/bin/sendEmail -f q865158909@163.com -t "$to" -s smtp.163.com -u "$subject" -o message-content-type=html -o message-charset=utf8 -xu q865158909@163.com -xp wb513692 -m "$body"
说明:
上面有4个地方我用紫色加粗字体表示了
a@domain.com 表示发件人邮箱
smtp.exmail.qq.com 表示邮箱的smtp服务器,因为我是用的腾讯企业邮箱。如果是其他邮箱,需要修改
password 表示发件人邮箱密码
编辑完成后,给脚本权限
chmod +x sendEmail.sh
chown zabbix.zabbix sendEmail.sh
手动执行一次脚本,后面的参数分别对应接收人,主题,内容
./sendEmail.sh c@domain.com test 123
登录c@domain.com的账户,查看邮件是否可以收到
如果脚本执行没有报错,收不到邮件的话,请检查linux网络问题,iptables、selinux是否关闭。
在测试脚本发送邮件失败出现如下问题:
sendEmail报错:at /usr/share/perl5/vendor_perl/IO/Socket/SSL.pm
centos7.2默认是 perl的版本是5.16,centos6.5的是5.10,后来把7的版本换成5.10,就可以正常发邮件了。
#### perl安装
wget http://www.cpan.org/src/5.0/perl-5.10..tar.gz
tar -zxf perl-5.10..tar.gz
cd perl-5.22.
./configure.gnu -des -Dprefix=/usr/local/perl
echo $?
make
make test
make install
mv /usr/bin/perl /usr/bin/perl.bak
ln -s /usr/local/perl/bin/perl /usr/bin/perl
perl -v
安装perl
二、进入zabbix安装界面配置
1.点击管理->报警媒介类型 点击最右边的创建媒体类型

输入脚本名称,类型选择脚本
添加以下3个参数,分别对应sendEmail.sh脚本需要的3个参数:收件人地址、主题、详细内容
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

2. 点击Admin用户


选择邮件报警

3.点击用户群组

点权限->添加


选择所有

点击更新
点击配置->动作 点击默认的动作

点击动作->编辑

zabbix服务端出现邮件发送失败
Zabbix监控之邮件发送失败-smtp-server: 错误代码550与535
1. 查找两个邮箱的配置

发现两个邮箱的POP3/SMTP/IMAP的状态不一致,于是开通qixin_monitor@163.com的客户端授权密码。
2. 开通客户端授权密码


修改持续时间为60秒
修改步骤为3,表示触发3次动作
选择用户Admin
选择仅送到sendEmail.sh
点击更新
解释:默认的步骤是1-1,也即是从1开始到1结束。一旦故障发生,就是执行sendEmail.sh脚本发生报警邮件给Admin用户和zabbix administrator组。
假如故障持续了1个小时,它也只发送一次。如果改成1-0,0是表示不限制.无限发送
间隔就是默认持续时间60秒。那么一个小时,就会发送60封邮件。
zabbix3.4实现sendEmail邮件报警的更多相关文章
- zabbix3.4 实现sendEmail邮件报警
zabbix3.4实现sendEmail邮件报警 转发:https://www.cnblogs.com/pythonal/p/7813948.html sendEmail是一个轻量级,命令行的SMTP ...
- 11 一步一步Zabbix4.4.0系统教你实现sendEmail邮件报警
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 一步一步Zabbix4.4.0系统教你实现sendEmail邮件报警 sendEmail是一个轻量 ...
- 12 Zabbix4.4.0系统sendEmail邮件报警优化
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 12 Zabbix4.4.0系统sendEmail邮件报警优化 接上一章节 Zabbix4.4. ...
- zabbix3.0.4 配置邮件报警
试验环境: LAMP环境 (LNMP环境已经成功了,为了避免干扰,我另一台LAMP主机) ### 我在做实验之前,作了时间同步,不知道这个有木有影响,一起说一下吧! yum -y install nt ...
- zabbix3.0.3 设置邮件报警
在zabbix3.0.3 设置报警这里卡了两天.终于解决了,这里我使用的mailx来作为发送邮件的客户端 1.设置mailx发信账号 yum -y install mailx ln -s /bin/m ...
- zabbix3.4使用外部邮件报警
打开web页面,找到 管理--报警媒介类型 打开 Email 填写外部邮箱信息 点击更新,这样发件人和邮箱服务器信息定义完成. 添加收件人信息: 接下来创建动作,配置---动作---选触发器 ok 过 ...
- zabbix3.4配置第三方邮件报警
废话不多说,直接进入主题. 1.安装mailx [root@localhost ~]#yum install malix -y #yum安装malix [ ...
- 分布式监控系统Zabbix-3.0.3-完整安装记录(5)-邮件报警部署
前面几篇陆续介绍了zabbix3.0.3监控系统的部署和监控项配置,今天这里分享下zabbix3.0.3的邮件报警的配置过程~由于采用sendmail发送邮件,常常会被认为是垃圾邮件被拒,所以不推荐这 ...
- 通过脚本发送zabbix邮件报警
zabbix原生的报警媒介类型中,邮件报警是我们常用的方式.当我们在CentOS6上面安装zabbix3.0并配置邮件报警的时候,在邮件配置正确的前提下,不管触发器如何触发,邮件总是发送不出去,但是在 ...
随机推荐
- ValidateCode源码
ValidataCode.java: package com.itcast; /** * @author 大汉 */ import java.awt.Color; import java.awt.Fo ...
- C#基础概念总结
C#基础概念总结 1..NET Framework概念 2. C#的含义: 3.什么是面向对象编程: 4.Visual Studio开发工具: 5..NET程序运行的机制: 1..Net Framew ...
- px,em,rem的区别与用法
别人总结的.个人觉得特别的好: http://www.w3cplus.com/css/when-to-use-em-vs-rem.html
- 华大单片机开发板HC32F030上手入门
HC32F030开发板(如下图所示)分为板载调试模块(左半部分)和MCU开发电路(右半部分).二者中间通过邮票孔相连,如果将板子从中间掰开,板载调试模块就可以当一个CMSIS-DAP的仿真器来使用.此 ...
- ASP.NET Core 问题排查:Request.EnableRewind 后第一次读取不到 Request.Body
实际应用场景是将用户上传的文件依次保存到阿里云 OSS 与腾讯云 COS ,实现方式是在启用 Request.EnableRewind() 的情况下通过 Request.Body 读取流,并依次通过 ...
- ublox TMOD2
Survey_in模式就是为了当满足下面的条件的时候,自动跳转到fixmod
- mysql--表数据操作
查询: 简单查询 ####查询的字段必须在表中存在 #### 对查询出来的数据进行修改时,不会修改原来的数据,只是修改了可视化的,我们看到的数据. # 查一个数据 select 字段名 from 表名 ...
- node.js爬取ajax接口数据
爬取页面数据与爬取接口数据,我还是觉得爬取接口数据更加简单一点,主要爬取一些分页的数据. 爬取步骤: 1.明确目标接口地址,举个例子 : https://www.vcg.com/api/common/ ...
- 普通Java Web项目为什么lib包要放在WEB-INF下
首先一个项目要编译好之后才能部署到Tomcat中运行. Tomcat运行时如何找编译好的.class文件呢,其实Tomcat下的web项目有两个预置的classpath(就是能找到.class文件的入 ...
- JavaWeb学习之三层架构实例(三)
引言 通过上一篇博客JavaWeb学习之三层架构实例(二)我们基本上已经实现了对学生信息列表的增删改查操作(UI除外),但是不难看出,代码冗余度太高了,尤其是StudentDao这个类,其中的增删改查 ...