设为首页 收藏本站
查看: 1316|回复: 0

[经验分享] Linux(centos6)环境zabbix 3.4邮件报警配置及zabbix故障处理

[复制链接]

尚未签到

发表于 2019-1-24 10:24:27 | 显示全部楼层 |阅读模式
本片博客主要介绍了[Zabbix] Centos 6下 Zabbix 3.4邮件报警配置及Zabbix邮件故障解决方法 ;分别介绍了zabbix使用本地账号发送邮件报警及使用互联网账号发送邮件报警配置,并处理邮件发送故障“cannot connect to SMTP server "zabbix.itwish.cn": cannot connect to [[zabbix.itwish.cn]:25]: [111] Connection refused”及“Support for SMTP authentication was not compiled in”。



Zabbix Server报警
说明:
Zabbix监控服务端、客户端都已经部署完成,被监控主机已经添加,Zabiix监控运行正常。Zabbix配置监控方式请参照前文:http://blog.运维网.com/itwish/2288052
实现:
在Zabbix服务端设置邮件报警,当被监控主机宕机或者达到触发器预设值时,会自动发送报警邮件到指定邮箱。

  • Zabbix服务端只是单纯的发送报警邮件到指定邮箱,发送报警邮件的这个邮箱账号是Zabbix服务端的本地邮箱账号,只能发送,不能接收外部邮件。
  • 使用互联网上可正常收发邮件的邮箱账号(例如:xxx@qq.com),通过在Zabbix服务端中设置,使其能够发送报警邮件到指定邮箱。


Zabbix 使用本地账号发送邮件报警配置
一、安装邮件服务poxfix
[root@zabbix ~]# yum install postfix    # 安装postfix
[root@zabbix ~]# service postfix start   # 启动postfix服务   
[root@zabbix ~]# chkconfig postfix on     # 开机自启动
[root@zabbix mail]# ss -tunl    # SMTP 25端口启用
Netid  State      Recv-Q Send-Q                                       Local Address:Port                                         Peer Address:Port
...      
tcp    LISTEN     0      100                                                    ::1:25                                                     :::*     
tcp    LISTEN     0      100                                              127.0.0.1:25                                                      *:*二、安装邮件发送工具mailx

[root@zabbix ~]# yum install mailx    # 安装邮件发送工具
[root@zabbix ~]# echo "Hello word" | mailx -s "hello" 345876547@qq.com    # 测试发送邮件
  注:
  mailx是UNIX系统上用来处理邮件的工具,使用它可以发送,读取邮件。
  
发送格式:
mailx -s subject XXX@163.com < message_file
假设邮件内容存储于msg文件中,用如下方法:
mailx -s &quot;test mail&quot; XXX@163.com < msg
或者
cat msg | mailx -s &quot;test mail&quot; XXX@163.com
多个收件人之间用逗号分隔
cat msg | mailx -s &quot;test mail&quot; XXX@163.com,XX2@163.com
也可以直接从命令行输入邮件内容:
mailx -s &quot;test&quot; XXX@163.com
上面这条命令会进入命令行输入状态,此时可以输入内容,按Ctrl+d键来结束输入。三、配置zabbix邮件报警

  •   报警介质类型配置:登陆web管理界面,进入“管理”——“报警媒介类型”——“Email”选项
    名称: Email
    SMTP服务器: zabbix.itwish.cn (为zabbix主机名称)
    SMTP服务器端口: 25
    SMTP HELO: itwish.cn
    SMTP电邮: zabbix@itwish.cn
    勾选“已启用”
    点击更新   

   

  •   用户配置(收件人邮箱配置):登陆web管理界面,进入“管理”——“用户”——“Admin”——“报警媒介”选项
    类型:  Email
    收件人:  ***@qq.com  
    勾选“如果存在严重性则使用”相关选项
    勾选“已启用”
    点击更新
   
   

  • 动作配置:登陆web管理界面,进入“配置”——“动作”——“Report problems to Zabbix administrators”选项
    名称:Report problems to Zabbix administrators
    添加触发条件:“触发器示警度 = **”
    勾选”已启用“
    点击更新

   

  • &quot;操作&quot;配置:登陆web管理界面,进入“配置”——“动作”——“Report problems to Zabbix administrators”——“操作”选项
    默认操作时间: 1h
    默认标题: 主机 {HOSTNAME} 在 {EVENT.DATE} {EVENT.TIME} 发生故障 {TRIGGER.NAME} {ITEM.VALUE}
    告警主机:{HOSTNAME}
    告警时间:{EVENT.DATE} {EVENT.TIME}
    告警等级:{TRIGGER.SEVERITY}
    告警信息: {TRIGGER.NAME}
    告警项目:{TRIGGER.KEY}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE}
    事件ID:{EVENT.ID}
    勾选“维护期间暂停操作”
   
    点击 “新的”
    &quot;操作细节&quot;配置:
    步骤:1 -1

    操作类型:发送消息

    发送到用户:添加指定用户

    仅送到:Email

    条件:“条件已确认 = 非确认”

    点击 &quot;添加&quot;

    点击“更新”
   
   

  • 恢复配置:登陆web管理界面,进入“配置”——“动作”——“Report problems to Zabbix administrators”——“恢复操作”选项

    默认操作时间: 1h
    默认标题: 主机 {HOSTNAME} 于 {EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME} 恢复故障 ,当前状态是 {ITEM.NAME} {ITEM.VALUE}

      恢复主机:{HOSTNAME}
      恢复时间:{EVENT.DATE} {EVENT.TIME}
      恢复故障:{ITEM.NAME}:{ITEM.VALUE}
      告警等级:{TRIGGER.SEVERITY}
      恢复信息: {TRIGGER.NAME}
      恢复项目:{TRIGGER.KEY}
      当前状态:{TRIGGER.STATUS}:{ITEM.VALUE}
      事件ID:{EVENT.ID}
     
    点击 “新的”
    &quot;操作细节&quot;配置
    操作类型:发送消息

    发送到用户:添加指定用户

    仅送到:Email
    点击 &quot;添加&quot;
    点击“更新”

     
   
四、测试zabbix报警
关闭zabbix server 中zabbix_agentd 服务测试,关闭网络设备端口测试

在zabbix 3.4 服务器端配置本地账号进行邮件报警时,邮件发送失败。提示“cannot connect to SMTP server &quot;**&quot;: cannot connect to [[**]:25]: [111] Connection refused”。如下图
   
故障原因: zabbix服务器未监听主机 IP 25端口
解决方法:配置postfix 脚本配置文件,对服务器端主机ip地址进行监听

[root@zabbix ~]# vi /etc/postfix/    # 调整postfix 脚本配置文件
inet_interfaces = localhost,zabbix.itwish.cn,172.16.10.5    # 修改该项,把localhost 修改为localhost,zabbix.itwish.cn,172.16.10.5
[root@zabbix ~]# service postfix restart
Shutting down postfix:                                     [  OK  ]
Starting postfix:                                          [  OK  ]
[root@zabbix ~]# ss -tunl    # 服务器监听本机ip 25端口
Netid  State      Recv-Q Send-Q                     Local Address:Port                       Peer Address:Port     
tcp    LISTEN     0      100                          172.16.10.5:25                                    *:*     
tcp    LISTEN     0      100                            127.0.0.1:25                                    *:*故障解决
   

邮箱验证

   


Zabbix Server使用互联网邮箱账号发送邮件报警
一、安装邮件发送工具mailx
[root@zabbix ~]# service postfix stop    # 关闭postfix 服务
Shutting down postfix:                                     [  OK  ]
[root@zabbix ~]# chkconfig postfix off
[root@zabbix ~]# yum install mailx    # 安装邮件发送工具
[root@zabbix ~]# echo &quot;Hello word&quot; | mailx -s &quot;hello&quot; 345876547@qq.com    # 测试发送邮件
[root@zabbix ~]# whereis mailx    # 查看mailx路径
mailx: /bin/mailx /usr/share/man/man1/mailx.1.gz /usr/share/man/man1p/mailx.1p.gz
[root@zabbix ~]# mailx -V    # 查看mailx版本
12.4 7/29/08  二、配置Zabbix服务端外部邮箱

  •   配置mailx配置文件mail.rc
[root@zabbix ~]# vi /etc/mail.rc    #编辑,添加以下信息
set from=xxx@qq.com smtp=smtp.qq.com
set smtp-auth-user=xxx@qq.com smtp-auth-password=123456    # 分别为邮箱账号及邮箱密码
set smtp-auth=login
:wq! #保存退出
[root@zabbix ~]# echo &quot;zabbix test mail&quot; |mail -s &quot;zabbix&quot; 345876547@qq.com   
#测试发送邮件,标题zabbix,邮件内容:zabbix test mail,发送到的邮箱:345876547@qq.com

  •   邮箱测试 ,


三、配置zabbix邮件报警

  •   报警介质类型配置:登陆web管理界面,进入“管理”——“报警媒介类型”——“Email”选项
    名称 Email
    SMTP服务器smtp.qq.com
    SMTP服务器端口 25
    SMTP HELO qq.com
    SMTP电邮 345876547@qq.com
    勾选“已启用”
    点击更新   

   

  •   用户配置:进入“管理”——“用户”——“Admin”——“报警媒介”选项
    类型  Email
    收件人  ***@qq.com  
    勾选“如果存在严重性则使用”相关选项
    勾选“已启用”
    点击更新
   
   

  •   动作配置:登陆web管理界面,进入“配置”——“动作”——“Report problems to Zabbix administrators”选项
    名称:Report problems to Zabbix administrators
    添加触发条件:“触发器示警度 = **”
    勾选”已启用“
    点击更新

   

  •   &quot;操作&quot;配置:登陆web管理界面,进入“配置”——“动作”——“Report problems to Zabbix administrators”——“操作”选项
    默认操作时间: 1h
    默认标题: 主机 {HOSTNAME} 在 {EVENT.DATE} {EVENT.TIME} 发生故障 {TRIGGER.NAME} {ITEM.VALUE}
    告警主机:{HOSTNAME}
    告警时间:{EVENT.DATE} {EVENT.TIME}
    告警等级:{TRIGGER.SEVERITY}
    告警信息: {TRIGGER.NAME}
    告警项目:{TRIGGER.KEY}
    问题详情:{ITEM.NAME}:{ITEM.VALUE}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE}
    事件ID:{EVENT.ID}
    勾选“维护期间暂停操作”
   
    点击 “新的”
    &quot;操作细节&quot;
    步骤:1 -1

    操作类型:发送消息

    发送到用户:添加指定用户

    仅送到:Email

    条件:“条件已确认 = 非确认”

    点击 &quot;添加&quot;

    点击“更新”
   
   

  •   恢复配置:登陆web管理界面,进入“配置”——“动作”——“Report problems to Zabbix administrators”——“恢复操作”选项

    默认操作时间: 1h
    默认标题: 主机 {HOSTNAME} 于 {EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME} 恢复故障 ,当前状态是 {ITEM.NAME} {ITEM.VALUE}

    恢复主机:{HOSTNAME}
    恢复时间:{EVENT.DATE} {EVENT.TIME}
    恢复故障:{ITEM.NAME}:{ITEM.VALUE}
    告警等级:{TRIGGER.SEVERITY}
    恢复信息: {TRIGGER.NAME}
    恢复项目:{TRIGGER.KEY}
    当前状态:{TRIGGER.STATUS}:{ITEM.VALUE}
    事件ID:{EVENT.ID}
   
    点击 “新的”
    &quot;操作细节&quot;
    操作类型:发送消息

    发送到用户:添加指定用户

    仅送到:Email
    点击 &quot;添加&quot;
    点击“更新”

   
   
  四、测试zabbix 报警

  模拟关闭监控的网络设备端口 ,观察zabbix报警状态
  
zabbix服务器端配置外网邮箱账号进行发送邮件时,邮件发送失败;提示: “Support for SMTP authentication was not compiled in ”
   
故障原因:要求curl版本最低7.20.0,系统curl版本号过低 。
解决办法:升级libcurl ,并重新编译zabbix
[root@zabbix ~]# curl -V    # 查看curl版本号
curl 7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.27.1 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
[root@zabbix ~]# vi /etc/yum.repos.d/CentOS-Base.repo     # 添加如下内容curl源
[city-fan]
name=CentOS -$releasever - City-fan
baseurl=http://mirror.city-fan.org/ftp/contrib/yum-repo/rhel6Server/x86_64/
gpgcheck=0
enabled=1
[root@zabbix ~]# yum upgrade libcurl    # 升级libcurl
[root@zabbix zabbix]# cd zabbix-3.4.14    # 进入zabbix解压包 ,重新编译安装
[root@zabbix zabbix-3.4.14]# ./configure \--prefix=/usr/local/zabbix \
--enable-server \
--enable-agent \
--enable-ipv6  \
--with-mysql \
--with-libxml2 \
--with-net-snmp \
--with-libevent \
--with-openssl \
--with-libcurl \
--with-libpcre \
--with-iconv \
--with-ssh2 \
--with-ldap \
--with-openipmi
[root@zabbix zabbix-3.4.14]# make && make install   
[root@zabbix zabbix]# service zabbix_server restart    # 重启zabbix_server 服务
Shutting down zabbix_server:                               [  OK  ]
Starting zabbix_server:                                    [  OK  ]  故障解决:


  至此,通过配置两种方式,实现了邮件报警功能。分别是通过本地服务器发送邮件报警配置 及互联网邮箱账号发送邮件报警配置。

转载请注明出处:http://blog.运维网.com/itwish






运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-666932-1-1.html 上篇帖子: Windows系统上安装zabbix_agent 下篇帖子: zabbix网卡流量带宽出现极大值,特别特别大
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表