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

巧用escalations限制Nagios报警次数 - [Nagios

[复制链接]

尚未签到

发表于 2019-1-16 10:23:00 | 显示全部楼层 |阅读模式
  Nagios是非常强大的一款监控工具,尤其是它的告警功能,现在网上实现的形式多种多样如结合移动139邮箱、Fetion、MSN等,但是如果服务器出现故障而未能及时的解决,Nagios就会不断的发送告警信息,实在令人头疼。现在用如下方法可以解决Nagios的告警次数问题。  系统环境:CentOS 5.2
  Nagios版本:3.0.6
  Nagios安装路径:/usr/local/nagios
  配置文件内容定义:#基本的配置就不再进行注释了。
  hosts.cfg
  define host{
  host_name                       WWW-Server
  alias                                 WWW-Server
  address                            193.1.16.100
  check_command                check-host-alive
  max_check_attempts         5
  check_period                     24x7
  notification_interval           10
  notification_period             24x7
  notification_options            d,u,r
  notifications_enabled          1
  contact_groups                 chengnan
  }
  Services.cfg
  define service{
  host_name                        WWW-Server
  service_description             Check_HTTP
  check_command                 check_http
  max_check_attempts          10
  normal_check_interval         3
  retry_check_interval            2
  check_period                      24x7
  notification_interval             5
  notification_period              24x7
  notification_options            w,u,c,r
  contact_groups                  admin
  }
  define service{
  host_name                      WWW-Server
  service_description           Check_Jetty
  check_command               check_tcp!8080
  max_check_attempts        10
  normal_check_interval       3
  retry_check_interval          2
  check_period                    24x7
  notification_interval           5
  notification_period            24x7
  notification_options          w,u,c,r
  contact_groups                admin
  }
  Contacts.cfg
  define contact{
  contact_name                          chengnan
  alias                                        chengnan
  service_notification_period         24x7
  host_notification_period             24x7
  service_notification_options        w,u,c,r
  host_notification_options           d,u,r
  service_notification_commands   notify-service-by-email
  host_notification_commands      notify-host-by-email
  email                                        chengnan@139.com           //手机邮箱
  }
  define contactgroup{
  contactgroup_name       chengnan
  alias                             Nagios Administrators
  members                      chengnan
  }
  除此之外再定义一个联系人
  define contact{
  contact_name                           chengnan_cor
  alias                                         chengnan_cor
  service_notification_period         24x7
  host_notification_period             24x7
  service_notification_options        w,u,c,r
  host_notification_options           d,u,r
  service_notification_commands   notify-service-by-email
  host_notification_commands      notify-host-by-email
  email                                        chengnan@company.com     //公司邮箱
  }
  define contactgroup{
  contactgroup_name       sysadmin
  alias                             sysadmin
  members                      chengnan_cor
  }
  然后创建一个配置文件:
  vi escalations.cfg
  escalations有自动调整;不断增加; 逐步上升等意思,本身配置文件的功能是当服务在某一告警次数前没有恢复,告警频率周期将会缩短,同时将告警信息发送至指定联系人。
  其内容为:
  define hostescalation{
  host_name               WWW-Server            //被监控主机名称,与Hosts.cfg中一致
  first_notification         4                            // 第n条信息起,改变频率间隔
  last_notification          0                            // 第n条信息起,恢复频率间隔
  notification_interval    30                          // 通知间隔(分)
  contact_groups          sysadmin
  }
  说明:从第4条告警信息起至服务器恢复前,告警信息发送至sysadmin组下的联系人,告警间隔为30分钟1条信息。
  define serviceescalation{
  host_name                WWW-Server                           //被监控主机名称,与Hosts.cfg中一致
  service_description     Check_HTTP,Check_Jetty           //被监控服务名称,与Services.cfg中一致
  first_notification         4
  last_notification          0
  notification_interval    30
  contact_groups          sysadmin
  }
  保存
  修改nagios.cfg
  vi nagios.cfg
  添加:
  cfg_file=/usr/local/nagios/etc/objects/escalations.cfg
  检查nagios配置文件是否正确
  /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
  重新启动nagios服务:
  service nagios restart
  测试:
  服务器启动后停掉被监控测试机的相应服务,确认告警信息是否按照设置发送至不同信箱
  后记
  escalations这个功能官方给的定义是notification的扩充,使notification变得更加灵活,方便。文中我使用的方法算是耍了个小聪明,将第四条告警信息后的所有信息全部发送至我公司邮箱直至服务器恢复(recovery的信息还是会发送至手机的),从而实现限制告警信息发送至手机的条数。
  官方文档地址:http://nagios.sourceforge.net/docs/3_0/escalations.html


运维网声明 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-663897-1-1.html 上篇帖子: Nagios通过MSN发送报警通知 下篇帖子: nagios优化
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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