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

nagios配置文件关系

[复制链接]

尚未签到

发表于 2019-1-16 07:42:21 | 显示全部楼层 |阅读模式
Nagios能实现的具体的功能正是通过配置文件来表现的。而这些配置文件之间有着千丝万缕的关系。比如services依赖于host,timeperiod和contactgroup等。  Nagios.cfg:
  这是nagios的主配置文件,它主要负责管理其他所有跟nagios有关的文件。他定义了nagios的日志文件,缓冲文件,状态信息存放文件等。还有其他所有的配置文件等。这些主要的配置文件如下:
  1.        hosts.cfg
  define host{
  host_name                                 #这一项是用来定义标识主机的名字。我们用这个名字在host group和service里标识这个主机。一个主机能定义多个服务。使用适当时,宏$HOSTNAME$里存放了这一项的值。
  alias                                          #这一项用来定义主机的一个完整名字或描述。主要是和使你能理容易的标识一个主机。使用适当时,宏$HOSTALIAS$里存放了这一项的值。
  address                                    #这一项是用来定义主机的地址。一般而言是主机的IP。当然,你也能够使用一个FQDN来标识你的主机,在没有可访问DNS服务器服务的情况下这种方法会引起问题。使用适当时,宏$ HOSTADDRESS $里存放了这一项的值。
  max_check_attempts                  #这一项用来定义在检测返回结果不是OK时,nagios重试检测命令的次数。设置这个值为1会导致nagios一次也不重试就报警。
  check_period                            #这一项用一个time period项的名字来定义在哪段时间内激活对这台主机的主动检测。time period是定义在别的文件里的配置项,我们可以在这里用名字来引用她。
  contact_groups                          #这是一个联系组列表。我们用联系组的名字来引用她们。多个联系组间用“,”来分隔。
  notification_interval                     #这一项用来定义当一个服务仍然down或unreachable时,我们间隔多久重发一次通知给联系组。
  notification_period                      #这一项用一个time period定义来标识什么时间段内给联系组送通知。这里我们用time period定义的名字来引用她。
  notification_options                   #这一项用来决定发送通知的时机。选项有:d = 当有down状态时发送通知,u = 当有unreachable状态时发送通知, r = 当有服务recoveries时发送通知,f = 当主机启动或停机时发送通知。如果你给一个n选项,那么永远不会发送通知。
  }
  2.        hostgroups.cfg
  define hostgroup{
  hostgroup_name                          #主机组名称,通常定义得较短
  alias                                          #主机组别名,通常定义得较长
  members                                    #主机组成员
  }
  3.        services.cfg
  define service{
  host_name                                  #主机名称
  service_description                      #服务描述
  check_command                         #执行命令
  max_check_attempts                   #最大失败尝试次数,值为1时只报警不重
  新检测
  normal_check_interval                 #常规检测间隔时间,默认为60分钟
  (常规检测是指无论服务状态是否正常,
  检测次数达到“最大次数” 时)
  retry_check_interval                    #失败尝试间隔时间,默认为60分钟
  (失败尝试是指服务状态不正常,检查
  次数达到“最大次数”时)
  check_period                              #检测时间段
  notification_interval                     #当服务状态不正常时通知联系人的间隔
  时间,值为0时不通知联系人
  notification_period                       #通知联系人时间段
  notification_options                     #通知联系人选项,w警告,u未知,c
  危急,f启动和停止,n不发送通知
  contact_groups                           #联系人组
  }
  4.        servicegroups.cfg
  define servicegroup{
  servicegroup_name                      #服务组名称,通常定义得较短
  alias                                #服务组别名,通常定义得较长
  members                          #服务组成员
  }
  5.        contacts.cfg
  define contact{
  contact_name                             #这个指令用来定义一个联系人的简称。他会在定义contactgroup时被引用到。在相应的环境中,宏定义$CONTACTNAME$会包含这个值。
  alias                                           #这个指令是为了定义一个联系人的具体的描述。在相应的环境中,宏定义$CONTACTALIAS$会包含这个值。
  host_notification_period               #这个指令是为了定义,能够通知Contact中定义的那个简称联系人,关于主机有问题或者恢复正常状态的时间段。你可以把他想象成能够通知Contact关于主机的在线时间。
  service_notification_period                  #这个指令是为了定义,能够通知Contact中定义的那个简称联系人,关于服务的问题或恢复正常的时间段。
  host_notification_options                     #这个指令为了定义主机在什么状态下会给联系人发通知。各个参数的描述如下:d=当主机的状态处于down时,发送通知;f=当主机状态处于stop时发送通知。r=当主机恢复up状态时发送通知。n=什么状态下都不发送通知。
  service_notification_options                 #这个指令为了定义服务在什么状态下会给联系人发通知。各个参数的描述如下:w=当服务处于警告状态时发送通知 u=当服务的状态处于unknown时,发送通知;f=当服务状态处于启动和停止时发送通知。c=当服务处于Critical状态时发送通知。n=什么状态下都不发送通知。
  host_notification_commands               #这个指令是为了定义一个通知联系人关于主机问题或恢复正常的联系手段的一个列表。多个手段之间用逗号隔开。
  service_notification_commands    #这个指令是为了定义一个通知联系人关于服务问题或恢复正常的联系手段的一个列表。多个手段之间用逗号隔开。
  email                                                 #这个指令是为了定义联系人的email地址。这个将取决于你是如何定义你的notification commands.它可以用来给联系人发送紧急邮件。在相应的环境中。宏定义$CONTACTEMAIL$将会包含它的值。
  }
  6.        contactgroups.cfg
  define contactgroup{
  contactgroup_name                            #联系组名称,通常定义得较短
  alias                                #联系组别名,通常定义得较长
  members                          #联系组成员
  }
  7.        timeperiods.cfg
  define timeperiod{
  timeperiod_name                         #时间段名称,通常定义得较短
  alias                                           #时间段别名,通常定义得较长
  sunday                                       #星期日时间段
  monday                                      #星期一时间段
  tuesday                                      #星期二时间段
  wednesday                                 #星期三时间段
  thursday                                     #星期四时间段
  friday                                         #星期五时间段
  saturday                                     #星期六时间段
  }
  8.        commands.cfg
  define command{
  command_name         #定义命令的简称
  command_line         #定义当服务进行时Nagios要执行的动作。在命令执行以前,所有合法的宏都要被他们的值代替。
  }


运维网声明 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-663755-1-1.html 上篇帖子: nagios 不能显示变量值问题解决 下篇帖子: CentOS 5.7 64位系统安装nagios监控
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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