如何将告警发送到紧急联系人的邮件里去
我们已经搭建好了通过465端口来发送邮件
echo "邮件正文" | mail -s "邮件主题" xxx@qq.com
还需要做一些额外的工作,一是脚本,二是示警媒介,
zabbix服务器端编写邮件发送脚本.
vim /etc/zabbix/zabbix_server.conf //修改alert scripts为以下路径
AlertScriptsPath=/usr/lib/zabbix/alertscripts #默认地址
/etc/init.d/zabbix_server restart //重新启动zabbix服务端
#vim /usr/lib/zabbix/alertscripts/sendmail.sh //编写邮件发送脚本
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
增加可执行权限
chown zabbix.zabbix /usr/lib/zabbix/alertscripts/sendmail.sh
chmod +x /usr/lib/zabbix/alertscripts/sendmail.sh
测试发送邮件脚本
/usr/lib/zabbix/alertscripts/sendmail.sh xxx@qq.com "测试邮件标题" "测试邮件内容"
zabbix后台配置,登录zabbix 控制台http://IP地址/zabbix.
1.> Administration|Media types | Create media type ,进入告警方式配置界面,创建sendmail.sh告警方式.
Name这里可以随便自己定义,Type选择scripts;Script name则输入linux下编写的脚本名称,即sendmail.sh,在Script parameters处点击Add分别添加
{ALERT.SENDTO},
{ALERT.SUBJECT},
{ALERT.MESSAGE} 3个参数,分别对应sendEmail.sh脚本需要的3个参数:收件人地址、主题、详细内容然后点击Add添加完成.
点击Administration | Users,进入用户配置界面,点击Admin用户,在”Media”选项卡中配置用户接收告警的邮箱地址。点击”Add”,在弹出的窗口中输入用户邮箱,见下图:
点击User groups,点击zabbix administrator组后面的调用模式,点击一下,就启用了,如下图:
点击 Zabbix administrators 组名称 点Permissions->Add 选择所有 点击select进行更新。
设置Zabbix触发报警的动作。
Configuration-->Action 点击右上方的Create action创建action (也可以修改已有的Actions),具体如下:
operations项
recovery operations项
主要是operation type:send message 以及send only to:sendmail.sh 这里选择我们创建的脚本名称
创建成功后测试,将iis的网站停了就可以出效果了
然后可以将其他机器以及其他端口给添加到监控以及做邮件告警,比如443或者是远程连接端口3389,近期机房网络经常性不行,体现出来一个就是远程连接不上。
下一次做的将是短信告警,阿里云的短信签名申领应该可以通过了。