nagios分组相关

2013年12月3日 发表评论 阅读评论

nagios监控功能非常强大,不仅仅适用于几台设备的监控,也适合用于上千台的主机和设备进行的监控。但当机器变得越来越多时,管理就会变得越来越混乱,这时分组就会显的比较清晰明了。nagios的分组功能非常强大,可以进行主机分组、服务分组、通知分组等。以下主要针对主机分组,服务分组和通知分组做下说明。

一、主机分组

在设备比较多的情况下,某些人负责某个片区或某几台主机的情况下,可能很不方便找到自己的主机并查看相应的资源占用情况。这时就可以利用主机分组,点开相应的组就可以查看自己所管理的主机的情况。方法如下:
在nagios.cfg中添加cfg_file=/usr/local/nagios/etc/objects/hostgroups.cfg,并在hostgroups.cfg中增加如下内容:

define hostgroup{
      hostgroup_name  JJH-servers ; The name of the hostgroup
      alias           JJH Servers ; Long name of the group
      members mtop2,mtop3,alimtop,jjh-cc
      }
define hostgroup{
       hostgroup_name  switches
       alias           Switches
       contact_groups  switch-admins
       members         switch1,switch2,switch3,switch4,switch5
      }

如上配置所示,分组的设备不但可以是主机,也可以是交换机、路由器或打印机等。多个设备之间在members项下利用逗号进行分隔 。在定义的组内也可以通过contact相关项通知到联系人组或联系人。分组配置完成后通过nagios -v nagios.cfg测试通过后,reload重新加载。完成后可以在web页上依点在Current Status --- Host Groups项下就可以查看相应的分组及其包含的主机,如下图所示

hostgroups

二、服务分组

类似于主机分组,在一个单位中,各个不同的职位人员可能负责不同的内容块,如DBA只关心数据库的相关情况,而要在多台hosts上一目了解所有数据库的相关监控项,就可以利用服务分组。具体做法为在nagios.cfg中添加:cfg_file=/usr/local/nagios/etc/objects/servicegroup.cfg,servicegroup.cfg的新增内容如下:

define servicegroup{
servicegroup_name       name
alias                   NA
members                 host,service,host2,service2,…………
}

同样,nagios -v nagios.cfg测试ok后,reload重载配置文件并生效 。这里就不再上图,完成后在web上通过Current Status --- ervice Groups查看某服务组内的各主机上服务的情况。

三、联系人分组

在分组上的配置,同hostgroups和servicegroups一样,contactgroup同上面两者之间没有区别。多个通知人之间在members上利用逗号分隔。我这里把定义联系人和定义联系组放到同一配置文件contacts.cfg中(视个人习惯,放成多个也无所谓,只要在nagios.cfg中包含就可以了)。如下:

#定义联系人
define contact{
        contact_name                    contact-win             ; Short name of user
        use                             generic-contact         ; Inherit default values from generic-contact template
        alias                           Nagios Win            ; Full name of user
        pager                           13456XXXXXX            ; phone
        email                           abc@139.com,def@361way.com
        }
define contact{
        contact_name                    contact-jjh             ; Short name of user
        use                             generic-contact         ; Inherit default values from generic-contact template
        alias                           Nagios jjh            ; Full name of user
        pager                           13865XXXXXX            ; phone
        email                           abc@139.com,def@361way.com
        }
#定义分组
define contactgroup{
        contactgroup_name       admins-win
        alias           Nagios Administrators
       members                 contact-win
        }
define contactgroup{
        contactgroup_name       admins-jjh
        alias                   jjh Administrators
        members                 contact-jjh
        }

四、一点总结

1、主机分组时,确保先做了主机定义;服务分组时,确保定义了相关的服务;联系人分组时,确保定义了相关的联系人 。一般主机和该主机上的相关服务我习惯于写在同一配置文件中,以主机名命名或以IP或业务类型进行分类。这个视个人规划而定,nagios的配置文件书上非常灵活。只要确保终最被加载就行。
2、主机监控、服务监控和模板定义和人员通知非常的灵活,可以互相进行引用,例如:在模板定义中定义通知的人员,然后直接在主机的主机定义项中和服务定义项中引用该模板,即可通知相关的人;也可以不在模板中定义联系人或通知组,只定义触发条件及通知时间等,直接在define host、define service时直接加入contacts、contact_groups ,由于篇幅原因,这里就不再介绍,在另一篇博文里单独做下总结。




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

分类: 开源软件 标签:
  1. 本文目前尚无任何评论.
  1. 2013年12月4日10:48 | #1