如何更改nagios监控默认的检查时间

/usr/local/nagios/etc/nagios.cfg:
  interval_length 表示时间单位,默认为60,即1分钟

  /usr/local/nagios/etc/objects/services.cfg:(新版本不存在这个文件)
  normal_check_interval 表示重新检测的时间间隔,默认为3个时间单位
  check_interval 与normal_check_interval的作用一样,只能在3.X中使用
  retry_check_interval 重试时间
  max_check_attempts 这个是出现故障的连接次数,达到这个次数之后就报警

  关于max_check_attempts、normal_check_interval、retry_check_interval三个参数。
  首先要说明两个概念,
  一、软态:被监控项处于retry_check检测周期内的非正常状态;
  二、硬态:被监控项达到max_check_attempts最大次数后的非正常状态;除此之外的状态,我们估且称之为“常态”。
  我们试着看看设置如下参数时,Nagios是怎么做状态检测及告警的:

  max_check_attempts 3
  normal_check_interval 3
  retry_check_interval 2
  notification_interval 3

 
 首先,Nagios每三分钟检测一次服务,当某次检测到服务状态为异常时,直接进入软态(1/3 soft
state),此后,以每2分钟(retry_check_interval)的检测频率,再进行2次(一共进行3次检测,从而达到
max_check_attempts)检测,如果这两次检测服务都为异常,则直接进入硬态(hard
state)。进入硬态后,Nagios以每3分钟(normal_check_interva)一次的频率检测服务,这与常态时是一样的;同时每3分钟
(notification_interval)进行一次告警。

  注意:修改这些参数后并不是即时生效。首先要重启nagios,然后等待下一次检测完成,nagios才会按新的参数计算检测时间与报警次数。

  出现alert后,如果要发送email报警,需要满足以下条件:

  service中有定义notifications_enabled=1,且此service的contacts有定义service_notification_commands。

  service_notification_commands的command出自于commands.cfg,这里定义了使用什么命令发送邮件。

  host的alert是一样的。

  收不到邮件通常有以下几种可能:

  邮件被拒收,检查mail的log可以看到。

  nagios是否发送告警邮件,跟contact.cfg(或hosts.cfg)配置文件里的几个参数有关系。下面就着重讲义下这几个参数:

  notifications_enabled:是否启用通知提醒功能。1为开启,0为禁用。显而易见,此选项值为0时,nagios肯定是不会发送邮件的。
  contact_groups:定义接收通知提醒邮件的联系人群组。请确认你的邮件地址是否填写正确并在组中。
 
 notification_interval:重复发送提醒邮件(信息)的最短间隔时间。默认间隔时间是60分钟。如果这个值被设为0,nagios将
不会重复发送告警通知邮件,而是一次。
notification_period:定义发送告警通知的时间段。关键主机服务,设为7×24;一般主机服务,设为上班时间(WorkTime)。那
么,如果定义的监控不在定义的告警时间段里,无论发生什么情况,nagios都不会发送告警通知邮件。
  notification_options:定义被监控主机(对象)在何种情况下发送告警通知邮件,可选状态如下:

  (1) w:WARNING,警告
  (2) u:UNKNOWN,未知
  (3) c:CRITICAL,危险(已达临界值)
  (4) d:DOWN,已宕机
  (5) r:RECOVERY,状态已恢复至OK
  (6) f:FLAPPING,(未弄懂这个状态的意思,也许是状态波动很大)
  (7) n:NONE,不发送告警通知邮件

  nagios监控与报警时间间隔:

  max_check_attempts:
  check_interval:
  retry interval:
  notification_interval:

 
 在OK状态,nagios用check_interval定义的时间间隔来监控,出现问题后,切换为retry_interval和
max_check_attempts进行监控,达到max_check_attempts后触发首次报警,同时恢复为check_interval进行
监控,并用notification_interval定义的时间间隔来发送报警,服务恢复后,在最近的check_interval点发送OK短信,完
成报警周期。

  特殊:
  1.max_check_attempts定义为1,检测到问题后立即报警,不重试。
  2.notification_interval定义为0,报警只发送一次,不重发。

  巧用Escalations限制Nagios报警次数

 
 Nagios是非常强大的一款监控工具,尤其是它的告警功能,现在网上实现的形式多种多样如结合移动139邮箱、Fetion、MSN等,但是如果服务
器出现故障而未能及时的解决,Nagios就会不断的发送告警信息,实在令人头疼。现在用如下方法可以解决Nagios的告警次数问题。

  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 nt-admins,managers,everyone

  }

  保存

  修改nagios.cfg

  vi nagios.cfg
  添加:
  cfg_file=/etc/nagios/objects/escalations.cfg

  检查nagios配置文件是否正确
  /usr/sbin/nagios -v /etc/nagios/nagios.cfg

  重新启动nagios服务:
  service nagios restart

  测试:

  服务器启动后停掉被监控测试机的相应服务,确认告警信息是否按照设置发送至不同信箱

  总结

 
 escalations这个功能官方给的定义是notification的扩充,使notification变得更加灵活,方便。文中我使用的方法算是
耍了个小聪明,将第四条告警信息后的所有信息全部发送至我公司邮箱直至服务器恢复(recovery的信息还是会发送至手机的),从而实现限制告警信息发
送至手机的条数。这样,用Escalations限制Nagios报警次数的功能就成功实现了。

时间: 2024-10-10 10:00:46

如何更改nagios监控默认的检查时间的相关文章

Nagios监控远程主机

p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; line-height: 150%; font-size: 13.5pt; font-family: "Calibri", "sans-serif" } h1 { margin-top: 17.0pt; margin-right: 0cm; margin-bottom: 16.5pt; margin-left:

Nagios监控基础安装与监控项部署(上)

前言:NAGIOS介绍: Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知. 主要功能 (1)网络服务监控(SMTP.POP3.HTTP.NNTP.ICMP.SNMP.FTP.SSH) (2)主机资源监控(CPU load.diskusage.system logs),也包括Windows主机(使用NSC

CentOS6.6+Puppet3.7.4分布式部署Nagios监控系统

测试框架 1  CentOS-6.6-x86_64(minimal)         2  puppet-3.7.4         3  nagios-4.0.8.tar.gz         4  nagios-plugins-2.0.3.tar.gz         5  nrpe-2.15.tar.gz         6  192.168.188.10 mirrors.redking.com         7  192.168.188.20 master.redking.com  

centos 搭建 nagios 监控系统.

linux下搭建nagios监控 一.什么是nagios 1.nagios 简介 Nagios是一个监视系统运行状态和网络信息的监视系统. Nagios能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等. Nagios可运行在Linux/Unix平台之上,同时提供一个可选的基于浏览器的WEB界面以方便系统管理人员查看网络状态, 各种系统问题,以及日志等等. Nagios是十分受欢迎的.开源且免费的计算机及网络系统监控软件. Nagios是"Nagios Ain't Gonna Insi

linux下搭建nagios监控

一.什么是nagios 1.nagios 简介 Nagios是一个监视系统运行状态和网络信息的监视系统.Nagios能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等.Nagios可运行在Linux/Unix平台之上,同时提供一个可选的基于浏览器的WEB界面以方便系统管理人员查看网络状态,各种系统问题,以及日志等等. Nagios是十分受欢迎的.开源且免费的计算机及网络系统监控软件.Nagios是"Nagios Ain't Gonna Insist On Sainthood"

使用nagios监控Windows下的tomcat和mysql

一.NSClient与nrpe最大的区别就是: (1)被监控机上安装有nrpe,并且还有插件,最终的监控是由这些插件来进行的.当监控主机将监控请求发给nrpe后,nrpe调用插件来完成监控. (2)NSClient则不同,被监控机上只安装NSClient,没有任何的插件.当监控主机将监控请求发给NSClient后,NSClient直接完成监控,所有的监控是由NSClient完成的. 二.安装windows监控引擎 下载NSClient++的安装包,注意根据实际的32/64CPU来下载 下载地址 

Nagios监控系统

一.Nagios监控系统简介 1.Nagios工作原理 Nagios本身不包括监控主机和服务的功能.所有的监控.监测功能都是通过各种插件来完成的.安装完nagios之后,在nagios主目录下的/libexex里面放有nagios自带的插件,如:check_disk是检查磁盘空间的插件,check_load是检查cpu负载的插件,每一个插件可以通过运行./check_xxx -h命令来检查其使用方法和功能. 1.Nagios的四种监控状态 Nagios可以识别四种状态返回信息.0(OK)表示状态

Nagios监控系统主机与服务配置

配置环境: 监控服务器 :192.168.189.132 被监控客户端:192.168.189.131(linux) 192.168.1.152(windows) Nagios相关配置文件概述: # cd /usr/local/nagios/etc/   相关文件用途如下表: 文件名或目录名 用途 cgi.cfg 控制CGI访问的配置文件 nagios.cfg Nagios 主配置文件 resource.cfg 变量定义文件,又称为资源文件,在些文件中定义变量,以便由其他配置文件引用,如$USE

Nagios 监控系统架设全攻略

Nagios 全名为(Nagios Ain’t Goona Insist on Saintood),最初项目名字是 NetSaint.它是一款免费的开源 IT 基础设施监控系统,其功能强大,灵活性强,能有效监控 Windows .Linux.VMware 和 Unix 主机状态,交换机.路由器等网络设置等.一旦主机或服务状态出现异常时,会发出邮件或短信报警第一时间通知 IT 运营人员,在状态恢复后发出正常的邮件或短信通知.Nagios 结构简单,可维护性强,越来越受中小企业青睐,以及运维和管理人