本文共 1299 字,大约阅读时间需要 4 分钟。
在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,如需转载请自行联系原作者