前面的文章里,我们已经配置好了Server和Agent,并且server能够自动发现agent。
由于时间间隔过久,我这里的环境信息发生了变化,注意调整。
邮件告警的前提:你已经配置好了server和agent之间的关系,server能够从agent抓取数据(能够监控到客户端)
实验环境:
Server:192.168.1.12
Agent:192.168.1.9
邮件发送工具:mailx
1、检查系统环境(这是习惯)
# systemctl is-enabled firewalld //关闭防火墙
Disabled
# getenforce //关闭SElinux
Disabled
2、关闭其他邮件发送工具
# systemctl is-enabled sendmail //关闭sendmail
Disabled
# systemctl is-enabled postfix //关闭postfix
Disabled
3、安装mailx工具
# yum -y install mailx
# rpm -ivh /mnt/cdrom/Packages/dos2unix-6.0.3-7.el7.x86_64.rpm
(解决邮件发送的内容变成附件的问题)
4、修改Server端邮件配置文件
# vim /etc/mail.rc
set sendcharsets=iso-8859-1,utf-8
set from=185****[email protected] //发件人的邮箱
set smtp=smtp.163.com:25 //发件人的邮箱服务器
set smtp-auth-user=185****[email protected] //发件人邮箱
set smtp-auth-password=<邮箱密码> //邮箱密码
5、测试邮件能否发送(去QQ邮箱查看是否收到)
# echo "wo yao fa she la "|mail -s "zabbix test" [email protected]
6、编写发送邮件的脚本
# cd /usr/local/zabbix/alertscripts
# vim sendmail.sh(先把邮件内容写在文件中,然后发送)
#!bin/bash
FILE=/tmp/mailtmp.txt
echo "$3" > $FILE
dos2unix -k $FILE
/bin/mail -s "$2" $1 < $FILE
# chmod 755 sendmail.sh
# chown zabbix. sendmail.sh
# touch /tmp/mailtmp.txt
# chmod 755 /tmp/mailtmp.txt
# chown zabbix. /tmp/mailtmp.txt
7、修改配置文件zabbix_server.conf
# vim etc/zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/alertscripts //去这个目录下找脚本
到此,系统配置完成,下面我们去web页面进行配置。
为了不必要的麻烦,还是重启下Server和Agent吧。
Web界面调试
1、添加报警媒介类型
2、 添加用户信息
3、 添加报警动作
4、 调整模板监控参数(让环境触发阈值,发生告警)
1、添加报警媒介类型(我这里新建了一个,没有使用默认的)
【管理】----【报警媒介类型】----【创建媒介类型】
名称:自定义就行
类型:脚本
脚本名称:跟配置文件保持一致
脚本参数:3.0以后的版本需要手动添加,就这三个就行
2、添加用户信息
【用户】---【创建用户】
3、添加报警动作
【配置】----【动作】----【触发器】----【创建动作】
条件:这里设置的是告警级别,只要有信息就发送邮件
这里邮件提示可以设置为中文,去网上搜一下吧,这里不多说了
1-1:表示故障发生就发送邮件,
故障持续1小时,也只发送一封邮件,因为上面设置的为3600s
如果上面设置为7200s,那么故障持续每隔2小时发送一封邮件。
1-0:0表示无穷大的意思。
如果设置为1-0它会一直不断的发送邮件,
邮件的间隔呢,就是这里设置的时间,
这里设置了120s,每2分钟发送一封邮件
这里配置基本上同前面就好了
这里也是,配置基本上同前面就行
注意:最后调整完,【用于动作中】这里一定要有刚才我们创建的动作“test_mail”
4、调整模板参数(让环境触发阈值,发生告警)
为了能快速看到报警效果,
我这里把“空闲内存”设置为了20G,如果小于20G,触发告警动作。
最后,来到第一个页面
【检测中】----【问题】----【选择主机群组】
耐心等一会儿,就会看到告警提示。
鼠标放在【完成1】上,会看到发送邮件的信息。
如果发送失败,会显示【失败1】
结束!!!