相关环境:

操作系统
描述 IP地址
server05 (centos6.6) 服务器端 192.168.10.65
server04 (centos6.6) 客户端 192.168.10.64



一、使用zabbix邮件报警功能


1、安装sendmail

[root@server05~]# service postfix stop   #linux默认使用postfix邮件服务,先关闭postfixss –tnl查看25端口关闭监听

 

[root@server05~]#yum install sendmail

[root@server05~]# vim /etc/mail.rc  #添加相关发件人内容

# Outgoingmessages are sent in ISO-8859-1 if all their characters are
# representablein it, otherwise in UTF-8.
setsendcharsets=iso-8859-1,utf-8
[email protected]
setsmtp=smtp.exmail.qq.com:25
set [email protected]  #认证用户
setsmtp-auth-password=xxxxxx    #认证密码


 

[root@server05~]# service sendmail start    #sendmail监听25端口

Startingsendmail:                                         [  OK  ]

 

[root@server05~]# echo "test.hahahahaha" | mail -s "test" [email protected]  #发邮件进行测试

 

测试sendmail成功,登陆我的QQ邮箱可以收到邮件!

zabbix系列(三):设置邮件报警,并测试监控80端口;_第1张图片

 

 

2、添加zabbix邮件报警脚本;

[root@server05alertscripts]# pwd  #进入相关目录

/usr/local/zabbix/share/zabbix/alertscripts

 

[root@server05alertscripts]# vim sendmail.sh

#!/bin/bash
echo"$3" | mail -s "$2" "$1"
 #其中$1是zabbix传递过来的收件人信息,$2是邮件主题,$3是邮件内容;

[root@server05alertscripts]# chmod 777 sendmail.sh  #记得脚本要给权限

 

    1)Zabbix进入网页设置邮件报警

        选择  管理——示警媒介类型

zabbix系列(三):设置邮件报警,并测试监控80端口;_第2张图片


    2)点击Email进入设置界面:选择类型——脚本,输入前面写的脚本名称;

zabbix系列(三):设置邮件报警,并测试监控80端口;_第3张图片

 

 

 

 

 

二、监控客户端80端口;


1、创建监控项目;

    1)点击组态——主机——项目;

zabbix系列(三):设置邮件报警,并测试监控80端口;_第4张图片


    2)选择右上角创建监控项;

zabbix系列(三):设置邮件报警,并测试监控80端口;_第5张图片


    3)设置监控项;只需要填写名称,键值(键值点后面的选择)net.tcp.port[,port]模块

zabbix系列(三):设置邮件报警,并测试监控80端口;_第6张图片

选择net.tcp.port[,port]模块:检查是否可以连接到指定的TCP端口。0——表示不能连接,1-表示能连接.IP地址是可选项。如果省略IP地址,则系统会使用127.0.0.1地址.例子:net.tcp.port[,80]


    4)添加完成以后显示如下:

wKioL1XyMfjzegP5AAGG-Efi9ng542.jpg

 

 

 

2、创建触发器:

    1)点击组态——主机——触发器;

zabbix系列(三):设置邮件报警,并测试监控80端口;_第7张图片


    2)右上角点击——创建触发器;

zabbix系列(三):设置邮件报警,并测试监控80端口;_第8张图片

    3)输入触发器名称——点击添加(项目);

zabbix系列(三):设置邮件报警,并测试监控80端口;_第9张图片


    4)点击选择;

zabbix系列(三):设置邮件报警,并测试监控80端口;_第10张图片


    5)查看刚才我们创建的项目;

wKiom1XyMAHBIhPaAADADvTIGCE743.jpg


    6)选择插入;

zabbix系列(三):设置邮件报警,并测试监控80端口;_第11张图片


    7)选择严重性,然后点击添加;

zabbix系列(三):设置邮件报警,并测试监控80端口;_第12张图片

 

 

 

3、创建动作

    1)选择组态——动作——创建动作:

zabbix系列(三):设置邮件报警,并测试监控80端口;_第13张图片

 

    2)创建一个名称,并勾选回复信息:

zabbix系列(三):设置邮件报警,并测试监控80端口;_第14张图片


    3)然后设置条件;选择触发值=问题 ,点击触发条件那里的添加:

zabbix系列(三):设置邮件报警,并测试监控80端口;_第15张图片


    4)最后设置动作——新的:

zabbix系列(三):设置邮件报警,并测试监控80端口;_第16张图片

zabbix系列(三):设置邮件报警,并测试监控80端口;_第17张图片

阶段:0表示为连通,1表示连通

步骤持续时间,按需求填写,我这里要测试所以60秒一次动作;

选择相关用户组;

选择相关用户;

选择发送报警方式:Email

 

完成后点击添加!

 


测试:

1、登陆客户端关闭80端口

[root@server04~]# service httpd stop

    #马上就会收80端口挂掉的邮件。

zabbix系列(三):设置邮件报警,并测试监控80端口;_第18张图片


 2、在客户端开启80端口

[root@server04~]# service httpd start

   #等一分钟会收到80端口OK的邮件;

(邮件上面的test post 80down 是我当时创建触发器的名称。看来触发器的名字起的不合理。)

zabbix系列(三):设置邮件报警,并测试监控80端口;_第19张图片


注意:不知道为什么我这里收到的报错详情是附件形式发送的,暂时没有找到解决方法,如果找到解决方法,我会在这里补充;


OK!到这里邮件报警和监控80端口功能都实现了!!