[root@zabbix-server ~]# view /etc/mail.rc
set from=zabbix_test_123@163.com
set smtp=smtp.163.com
set smtp-auth-user=zabbix_test_123@163.com
set smtp-auth-password=xxx
set smtp-auth=login
‘smtp-auth-password’为‘客户端授权密码’
测试外部邮箱
[root@zabbix-server ~]# echo "zabbix test mail 123" |mail -s "zabbix" zabbix_test_123@163.com
由于163的反垃圾机制,当发送为其它邮箱如126、qq邮箱时会报错,故本例中发送和接收邮箱都为zabbix_test_123@163.com。如若上生产可配置企业邮箱。
4.编写邮件发送脚本
修改脚本路径
[root@zabbix-server ~]# view /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/etc/zabbix/alertscripts
编写脚本mail.sh
[root@zabbix-server ~]# cd /etc/zabbix/
[root@zabbix-server zabbix]# mkdir alertscripts && cd alertscripts && touch mail.sh
[root@zabbix-server alertscripts]# more mail.sh
#!/bin/bash
echo "$3" | mail -s "$2" $1
[root@zabbix-server alertscripts]# chmod 755 mail.sh
$1:收件人邮箱地址;$2:邮件标题;$3:邮件内容
5.web端配置
5.1创建报警媒介类型
脚本参数分别对应:收件人地址、主题、详细内容
5.2配置用户
选择Admin:
添加报警媒介:
5.3创建报警动作
配置-动作-创建动作,新建动作:
新建操作:
新建操作就是通过何种方式将消息发送给谁,其它选项默认。
添加恢复操作:
添加后的动作:
5.4测试邮件告警
新增告警项,在agent端/home文件系统使用dd命令创建文件,将文件系统使用率提升至90%以上以触发告警:
[root@zabbix-agent home]# dd if=/dev/zero of=test bs=1M count=1950
用dd命令生成一个1950M的test文件,使/home使用率告警。
触发邮件告警:
发现邮件以附件方式发送,显示不正常,修改邮件发送脚本。
安装dos2unix转换工具:
[root@zabbix-server ~]# yum -y install dos2unix
编辑发送脚本:
[root@zabbix-server ~]# cd /etc/zabbix/alertscripts
[root@zabbix-server alertscripts]# touch mailtmp.txt && chmod 777 mailtmp.txt
[root@zabbix-server ~]# chown -R zabbix:zabbix /etc/zabbix/alertscripts/
[root@zabbix-server alertscripts]# more mail.sh
#!/bin/bash
FILE=/etc/zabbix/alertscripts/mailtmp.txt
echo "$3" >$FILE
dos2unix -k $FILE
cat $FILE|/bin/mail -s "$2" $1
注意:dos2unix命令执行的时候会产生临时文件,所以要有写的权限,故应修改alertscripts目录属主,不然测试过程中会报错:‘dos2unix: Failed to open temporary output file: 权限不够’。
发现正文不再以附件形式显示。
查看告警日志:
至此邮件告警配置完成。
微信推送
1.公众号注册
登陆https://work.weixin.qq.com/, 注册企业号。
CorpID后面web端配置会用到。
2.新增应用
AgentId和Secret后面web端配置会用到。
3.添加部门及成员
部门id为3,后面会用到。
添加成员。添加成员可以直接添加,也可以微信邀请:
直接添加:
成员添加完成后修改应用可见范围为新建部门zabbix-webchat-01:
查看部门成员:
4.下载微信发送脚本