Chinaunix首页 | 论坛 | 博客
  • 博客访问: 35646
  • 博文数量: 7
  • 博客积分: 142
  • 博客等级: 入伍新兵
  • 技术积分: 85
  • 用 户 组: 普通用户
  • 注册时间: 2007-05-17 15:20
文章分类

全部博文(7)

文章存档

2011年(7)

我的朋友

分类: 系统运维

2011-07-11 09:54:12

    主机对象用于定义一个服务器、工作站、网络设备、防火墙等被监控设备。为了实现它的定义,我们先了解下对象定义语法

1.        对象语法


Ø  对象以“define  对象类型 { 开头”。

Ø  对象以“}”结尾。

Ø  中间包含对象的选项。

Ø  以“#”开始的行为注释。

Ø  区分大小写

Ø  在“”后的字符为注释。

 

2.       主机选项


那么对于一个主机有那些选项呢?

 

1.        主机需要一个名字吧,地球人都知道。

2.        主机需要一个IP地址吧,不然谁知道谁呢?

3.        主机需要一个检测命令吧,不然谁知道它是死还是活的?

4.        主机需要一个检测命令的间隔吧,不然谁知道它多久检测一次?

5.        主机需要一个联系人吧,不然谁知道通知到谁?

6.        主机需要一个通知选项吧,不然它那知道什么情况该发通知?

7.        主机需要一个通知时间吧,不然它那知道在什么时间可以发送?

8.        ........................

9.        等等.....你有木有完,你这样说下去,我何时才能把主机的选项学完啊?

 

    呵、那也是,那我们就依据Nagios已经定义好的对象模板新建对象,虽然有局限性,但这样上手快。定义一个主机,有些选项是必须的,有些是可选的,而且有些是唯一的。可以通过如下的命令显示定义好的主机模板:

  1. grep -A 1 'define host' templates.cfg /usr/local/nagios/etc/objects/templates.cfg

      

3.       主机定义

    有个主机模板叫” linux-server,我们就先用这个把。最终我们把对象定义出来了(非必须的不写)

  1. define host{
  2. host_name test ;Nagios对该主机的标识(注意名字要唯一)
  3. address 192.168.10.1 ;IP
  4. use linux-server ;使用的模板名称
  5. }

 

    对象配置文件总有个存储位置吧?,你就用默认的存储位置把,文件名以*.cfg结尾(其实随你的便,你爱咋写,就咋写,但有个标准的话,对后期的维护比较方便)

    e.g :  /usr/local/nagios/etc/objects/test.cfg

 

4.       检验


    编辑主配置文件(/usr/local/nagios/etc/objects/nagios.cfg)

     添加cfg_file=/usr/local/nagios/etc/objects/test.cfg

             

          重新加载配置文件

              配置文件修改了要重新加载才会生效。

 

 最终你会在web界面Host菜单中看到你定义的主机:),至此你已经学会了主机定义J

 

       

 

5.       疑问

 

Ø  什么是模板?

 

       随着监控设备的增加,你需要定义更多的对象,但对象有些属性是相同的,这时候你可以把对象分组,把共用的选项提取出来,配置成模板,简化你的操作,方便你的管理。

 

Ø  对象模板和对象定义有什么区别?

 

如果定义的对象中,包含“register  0”指令,表示这是个模板,所有模板的名称定义使用的是“name”指令定义,这里要注意下。其他选项都一样。

 

Ø  对象模板和对象定义中都包含了相同的选项,谁会生效?

 

       对象会继承模板中的选项,如果没有的话。如果有的话会替换模板中的值,使用当前的值。

 

Ø  模板可以多层嵌套吗?

 

       你想怎么用就怎么用!

 

         别问了,在问我就露出马脚了-_!(水平有限啊)

阅读(1683) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~