目录
一、电脑登录网易邮箱配置
二、Server端安装配置邮件服务器
邮箱查看
三、编辑zabbix_server.conf 引用邮件脚本
查看邮件
五、配置zabbix web监控项邮件报警
操作思路
Server.zabbix.com web操作
确认报警媒介信息
配置zabbix中的用户所使用的报警媒介类型以及接收邮件的邮箱;
创建发送邮件的动作
动作模板
编辑
测试邮件报警
查看邮箱
恢复ftp服务
2.关闭gns网络设备模拟设备故障
一、电脑登录网易邮箱配置
按照步骤一步一步来,主要是获取授权码(授权码一定要保存好,不然再次申请会很麻烦)
二、Server端安装配置邮件服务器
[root@server ~]# yum install -y mailx dos2unix
[root@server ~]# mailx -V
12.5 7/5/10
[root@server ~]# vim /etc/mail.rc #在此文件末尾添加,指定接收邮件邮箱地址,指定邮箱服务器地址,指定接收邮件邮箱地址的授权码,并非163邮箱的密码,而是授权码,登陆163网易邮箱地址后,--设置--开启smtp和pop3--点击客户端生成授权码--使用此授权码进行指定到此配置文件;
set from=自己邮箱@163.com smtp=smtp.163.com
set smtp-auth-user=自己邮箱@163.com smtp-auth-password=生成的授权码
set smtp-auth=login
[root@server ~]# echo "test mail from zabbix.server.com"| mail -s"test mail" mslinux@163.com #发送测试内容
邮箱查看
三、编辑zabbix_server.conf 引用邮件脚本
[root@server ~]# vim /usr/local/zabbix/etc/zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
[root@server ~]# cd /usr/local/zabbix/share/zabbix/alertscripts
[root@server alertscripts]# vim mail.sh #编写报警邮件脚本,调整mail命令语法位置,使用dos2unix命令转换字符,避免收到邮件不显示正常邮件内容而出现ATT00001.bin的错误;
#!/bin/bash
#export.UTF-8
bt=$2 #定义发件标题和收件人信息
sjr=$1 #定义发件标题和收件人信息
FILE=/tmp/mailtmp.txt #定义文件路径
echo "$3" >$FILE
/usr/bin/dos2unix -k $FILE #使用dos2unix命令转换字符,避免收到邮件不显示正常邮件内容而出现ATT00001.bin的错误;
/bin/mail -s "$bt" "$sjr" <$FILE #执行邮件发送命令
[root@server alertscripts]# chmod 777 mail.sh #为脚本加权
[root@server alertscripts]# chown zabbix:zabbix mail.sh #更改属组 及 属主
[root@server alertscripts]# touch /tmp/mailtmp.txt #创建信息文件
[root@server alertscripts]# chmod 777 /tmp/mailtmp.txt #加权
[root@server alertscripts]# chown zabbix:zabbix /tmp/mailtmp.txt #改属组 及 属主
#注意文件以及报警脚本的归属以及权限,注:脚本文件和存放邮件消息文件归属必须是zabbix;
[root@server alertscripts]# ./mail.sh 自己邮箱@163.com "test mail2" "test mail from server.zabbix.com test2" #脚本测试
dos2unix: converting file /tmp/mailtmp.txt to Unix format ...
查看邮件
五、配置zabbix web监控项邮件报警
操作思路
监控--创建报警媒介类型--更新用户使用的报警媒介类型--创建动作(根据触发器触发)--验证;
Server.zabbix.com web操作
输入创建的报警媒介类型的名称,指定类型为脚本的方式,并且输入zabbix_server端/usr/local/zabbix/share/zabbix/alertscripts目录下的脚本名称,确保脚本的归属是zabbix,并且脚本的权限是777,下边设置脚本参数,也就是发送邮件的语法:脚本 收件人 标题 内容,必须严格按照此标准填写;
三个脚本参数如下
$1 {ALERT.SENDTO}
$2 {ALERT.SUBJECT}
$3 {ALERT.MESSAGE}
确认报警媒介信息
配置zabbix中的用户所使用的报警媒介类型以及接收邮件的邮箱;
创建发送邮件的动作
输入动作名,动作名最好为英文,可以选择触发这个动作的条件(可以选择触发器=触发器的名称或者选择触发器似触发器名称),作为条件,如若如图不选择触发器的条件,那么任何消息都会提示到邮箱;
动作模板
添加报警动作,一旦此触发器添加触发,添加报警邮件的标题和内容,默认操作步骤持续时间(修改持续时间为60秒 (一分钟发送一次邮件)),添加操作(添加接收邮件的用户);
邮件格式如下:
默认接收人内容:故障{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.关闭agent.zabbix.com的ftp服务
[root@agent ~]# systemctl stop vsftpd.service
查看邮箱
已有故障邮件
恢复ftp服务
[root@agent ~]# systemctl start vsftpd
查看web图形
查看仪表盘
查看动作日志
再次查看邮箱
2.关闭gns网络设备模拟设备故障
查看主机状态
查看动作日志
查看邮箱