Zabbix监控服务三、配置邮件报警
zabbix监控服务配置邮件报警
报警功能应该在在zabbix_server主机上配置
zabbix监控配置流程
两种邮箱报警方式
一、本地邮箱报警配置
1.在服务端上安装邮件服务器
2.写发送报警邮件的脚本
3.定义媒介(发送方式)
4.配置动作
5.测试报警邮件功能
首先在主机上配置发送邮件的服务
邮件服务是25号端口
[root@slave ~]# yum -y install mailx postfix
[root@slave ~]# systemctl start postfix
[root@slave ~]# ss -antl
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 128 0.0.0.0:10050 0.0.0.0:*
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 100 127.0.0.1:25 0.0.0.0:*
LISTEN 0 128 [::]:22 [::]:*
LISTEN 0 100 [::1]:25 [::]:*
[root@slave ~]#
测试邮件服务是否能够使用
# echo是主题 mail -s 后面是主题 最后是邮件地址
[root@zabbixserver ~]# echo "hello word" | mail -s "这是一次测试邮件" 3198621637@qq.com
qq邮箱收到了邮件,但是是在垃圾箱里面,因为主机名被认为是垃圾邮件,记得修改主机名或者设置白名单
设置主机名
[root@slave ~]# hostname
slave.example.com
添加域名白名单
2.写发送报警邮件的脚本
发送邮件脚本必须在/usr/local/share/zabbix/alertscripts下面创建
[root@zabbixserver ~]# cd /usr/local/share/zabbix/alertscripts/
[root@zabbixserver alertscripts]#
[root@zabbixserver alertscripts]# vim sendmail.sh
[root@zabbixserver alertscripts]# cat sendmail.sh
#!/bin/bash
content=$(echo $1 | tr "\r\n" "\n") #tr "\r\n" "\n" 把Windows的换行替换成Linux的换行
subject=$(echo $2 | tr "\r\n" "\n")
mailto=$3
echo $content | mail -s $subject $mailto #位置变量$1是正文
设置报警类型(媒介)
自创建一个媒介类型
配置模板
配置问题更新的模板
媒介定义完成后可以测试一下效果
测试成功,收到了邮件
然后在users里面给用户添加媒介
配置动作
动作就是触发条件时要做的事情
进入配置动作界面
配置报警时动作
配置更新动作
媒介定义完成后进入用户的媒介进行一次刷新,不然效果出不来
测试报警邮件功能
触发报警,看看能否收到邮件
[root@slave tmp]# echo '1232' >> abc
查看仪表盘,显示了警告信息
确认收到邮件
二、第三方邮箱报警配置
1.定义媒介
2.配置动作
3.测试邮件报警功能
1.定义媒介
先登录到准备好的发送邮件的邮箱账号上(网易邮箱)
打开POP3服务
回到zabbix网页
修改zabbix默认自带的Email媒介
测试
成功收到,证明媒介配置没有问题
然后在users里面给用户添加媒介
添加触发器
设置动作
最后测试
[root@slave tmp]# echo "35636243" > abc