在zabbix3.0.3 设置报警这里卡了两天。终于解决了,这里我使用的mailx来作为发送邮件的客户端
1.设置mailx发信账号
yum -y install mailx
ln -s /bin/mailx /bin/mail
1
2
3
4
5
6
|
cat /etc/mail .rc // 内容如下
set from=123456@126.com
set smtp=smtp.126.com
set smtp-auth-user=123456
set smtp-auth-password=123456
set smtp-auth=login
|
发送测试邮件
1
|
echo test | mail -s " test" 136×××@126.com
|
2.zabbix服务器端编写邮件发送脚本
1
2
3
4
|
mkdir /etc/zabbix/alertscripts
vim /usr/local/zabbix/etc/zabbix_server .conf // 修改alert scripts为以下路径
AlertScriptsPath= /etc/zabbix/alertscripts
service zabbix_server restart
|
1
2
3
4
5
|
vim sendmail.sh
#!/bin/bash
messages=` echo $3 | tr '\r\n' '\n' `
subject=` echo $2 | tr '\r\n' '\n' `
echo "${messages}" | mail -s "${subject}" $1 >> /tmp/sendmail .log 2>&1
|
1
2
3
|
增加可执行权限
chown zabbix.zabbix /etc/zabbix/alertscripts/sendmail .sh
chmod +x /etc/zabbix/alertscripts sendmail.sh
|
1
2
|
测试发送脚本
/etc/zabbix/alertscripts/sendmail .sh 136xxx@126.com "测试邮件标题" "测试邮件内容"
|
3.zabbix后台配置
Administration|Media types,进入告警方式配置界面,创建sendmail.sh告警方式,如下图
name这里可以随便自己定义,type选择scripts;Script name则输入上一步编写的脚本名称,即sendmail.sh

Administration|Users,进入用户配置界面,在”Media”选项卡中配置用户接收告警的邮箱地址。点击”Add”,在弹出的窗口中输入用户邮箱,见下图:

Configuration-->Action 修改已有的Actions,具体如下:

这时候就可以先停止zabbix_agent 测试下短信会不会成功发送
本文转自 shouhou2581314 51CTO博客,原文链接:http://blog.51cto.com/thedream/1827984,如需转载请自行联系原作者