监控服务zabbix邮箱告警的三种配置方式
环境:
主机名 | IP | 服务 | |
---|---|---|---|
服务端 | vm1 | 192.168.152.147 | zabbix_server、zabbix_agentd |
客户端 | vm2 | 192.168.152.148 | zabbix_agentd |
方式一:web界面配置邮箱告警
1. 配置主机和主机组
创建主机组
创建主机并添加至主机组
2. 添加监控项
手动添加监控项,验证/opt/abc文件是否发生改变
3. 添加触发器
在客户端更新文件,查看是否触发警告
[root@node3 ~]# echo 'hello' >> /opt/abc
[root@node3 ~]# echo 'hello' >> /opt/abc
4. 添加媒介
选择Admin
选择媒介类型
添加媒介
这里可以设置发送邮件的模板
5. 添加动作
修改文件,验证是否发送邮件
[root@node3 ~]# echo 'hello' >> /opt/abc
[root@node3 ~]# echo 'hello' >> /opt/abc
[root@node3 ~]# echo 'hello' >> /opt/abc
配置成功,已经收到邮件了
方式二:通过脚本使用系统用户发送邮件
前面三步都一样,这里就不做演示了,直接从第四步开始
1. 在服务端安装mailx,并配置脚本
[root@node1 ~]# yum -y install mailx
[root@node1 ~]# vim /usr/local/etc/zabbix_server.conf
...
AlertScriptsPath=/usr/local/etc/zabbix/alertscripts //定义一个脚本存放的目录
[root@node1 ~]# mkdir -p /usr/local/etc/zabbix/alertscripts
[root@node1 ~]# cd /usr/local/etc/zabbix/alertscripts
[root@node1 alertscripts]# vim send-mail.sh
#!/bin/bash
content=$(echo -e $1 |tr "\r\n" "\n")
title=$(echo -e $2 |tr "\r\n" "\n")
echo -e "$content" |/usr/bin/mail -s "$title" $3
[root@node1 alertscripts]# chmod +x send-mail.sh
[root@node1 ~]# chown -R zabbix.zabbix /usr/local/etc/zabbix
//重启服务
[root@node1 ~]# pkill zabbix
[root@node1 ~]# zabbix_server
[root@node1 ~]# zabbix_agentd
2. 在web界面配置媒介
添加媒介
添加发送邮件的模板
添加收件媒介
3. 修改动作
4. 触发验证
[root@node3 ~]# echo 'hello' >> /opt/abc
[root@node3 ~]# echo 'hello' >> /opt/abc
方式三:通过脚本使用第三方邮箱发送邮件
前面四步和方式二相同,这里就不做演示了,直接从第五步开始
1. 编辑配置文件
[root@node1 ~]# vim /etc/mail.rc
//添加以下内容
set from=2356206941@qq.com
set smtp="smtp.qq.com"
set smtp-auth-user=2356206941@qq.com
set smtp-auth-password=邮箱授权码
set smtp-auth=login
[root@node1 ~]# systemctl restart postfix
2. 修改收件箱地址
3. 触发验证
[root@node3 ~]# echo 'hello' >> /opt/abc
[root@node3 ~]# echo 'hello' >> /opt/abc