nagios配置文件介绍

Nagios配置文件简介

1.1配置文件概述

nagios安装完成后,配置文件在安装时放在了/usr/local/nagios/etc/目录下。

[root@Nagios-Server ~]# ls -l /usr/local/nagios/etc/

total 88

-rw-rw-r-- 1 nagios nagios 11408 May 29 02:09 cgi.cfg #CGI 配置文件

-rw-r-r- 1 root root 22 May 29 02:13 htpasswd.users #Apache 验证密码文件

-rw-rw-r-- 1 nagios nagios 43776 May 29 02:09 nagios.cfg #Nagios 主配置文件

drwxrwxr-x 2 nagios nagios 4096 May 29 02:09 objects #监控对象定义文件目录

-rw-rw---- 1 nagios nagios 1340 May 29 02:09 resource.cfg #Nagios资源配置文件


1.2主配置文件

主配置文件包括了一系列的设置,它们会影响 Nagios 守护进程。不仅是 Nagios 守护进程要使用主配置文件,CGIs 程序组模块也需要,在主配置文件里,我们可以指定主机、主机组、服务、服务组、命令、通知人、通知人组等配置文件的位置。

主配置文件参数众多,在这里只修改小部分,确保 Nagios可以正常运行。

[root@Nagios-Server ~]# vi /usr/local/nagios/etc/nagios.cfg

# You can specify individual object config files as shown below:

cfg_file=/usr/local/nagios/etc/objects/commands.cfg #命令配置文件

cfg_file=/usr/local/nagios/etc/objects/contacts.cfg #联系人配置文件

cfg_file=/usr/local/nagios/etc/objects/timeperiods.cfg

cfg_file=/usr/local/nagios/etc/objects/templates.cfg

cfg_file=/usr/local/nagios/etc/objects/contactgroups.cfg #联系组定义文件

cfg_file=/usr/local/nagios/etc/objects/hosts.cfg #增加主机配置文件

cfg_file=/usr/local/nagios/etc/objects/hostgroups.cfg #增加主机组配置文件

cfg_file=/usr/local/nagios/etc/objects/services.cfg #增加服务配置文件

cfg_file=/usr/local/nagios/etc/objects/servicegroups.cfg #增加服务组配置文件

# Definitions for monitoring the local (Linux) host

#cfg_file=/usr/local/nagios/etc/objects/localhost.cfg #注释掉

1.3 资源配置文件

资源文件可以保存用户自定义的宏。资源文件的一个主要用处是用于保存一些敏感的配置信息如系统口令等不能让 CGIs 程序模块获取到的东西。

1.4对象定义文件

对象定义文件是管理员经常需要修改的配置文件,用于定义主机、服务、主机组、服务组、联系人、联系人组、命令等等,也就是要定义监控的对象和监控的方法。

对象定义文件有两种基本写法,例如监控一台 Linux服务器。

方法一:将该主机写入主机定义文件,将要监控的服务写到服务定义文件中,前提是在 Nagios的主配置文件里需要定义这两个配置文件。

方法二:将该主机的配置写入到一个如【主机名】.cfg 文件里,然后再 Nagios 的主配置文件里定义这个配置文件。

这两种方法的选择要根据实际情况,方法一由于主机数的增加会增加配置文件的管理难度,文件内容多,容易出现配置错误等问题。

方法二由于是每个监控主机一个配置文件,这样虽然清晰明了,但对于想结构化管理的用户不太方便。

1.5 CGI 配置文件

CGI 配置文件包含了一系列的设置,它们会影响 CGIs 程序模块。还有一些保存在主配置文件之中,因此CGI 程序会知道你是如何配置的 Nagios 并且在哪里保存了对象定义。

1.6通过实例介绍配置文件

下面通过监控一台服务器是否存活的实例来介绍相关配置文件的用法。

1.6.1主机定义文件

定义你要监控的对象,这里定义的 host_name 被应用到其它的所有配置文件中,这个是我们配置 Nagios 必须修改的配置文件。

[root@Nagios-Server ~]# vi /usr/local/nagios/etc/objects/hosts.cfg

define host

Unknown macro: { 
              host_name Nagios-Server #设置主机的名字,该名字会出现在hostgroups.cfg和 services.cfg中。
              alias Nagios Server #别名 
              address 192.168.140.128 #主机的 IP 地址 
              check_command check-host-alive #检查的命令 
              check_interval 5 #检测的时间间隔 
              retry_interval 1 #检测失败后重试的时间间隔 
              max_check_attempts 5 #最大重试次数 
              check_period 24x7 #检测的时段 
              process_perf_data 0 retain_nonstatus_information 0 contact_groups sagroup #联系组 
              notification_interval 30 #通知的时间间隔 notification_period 24x7 #通知的时间段 
              notification_options d,u,r #通知的选项 #w---报警(warning),u---未知(unkown) #c---严重(critical),r---从异常情况恢复正常
              }

define host

Unknown macro: { 
              host_name Nagios-Client #设置主机的名字,该名字会出现在hostgroups.cfg和 services.cfg中。 
              alias Nagios Client #别名 
              address 192.168.140.129 #主机的 IP 地址 
              check_command check-host-alive #检查的命令 
              check_interval 5 #检测的时间间隔 
              retry_interval 1 #检测失败后重试的时间间隔 
              max_check_attempts 5 #最大重试次数 
              check_period 24x7 #检测的时段 process_perf_data 0 retain_nonstatus_information 0 
              contact_groups sagroup #联系组 notification_interval 30 #通知的时间间隔 
              notification_period 24x7 #通知的时间段 
              notification_options d,u,r #通知的选项 #w---报警(warning),u---未知(unkown) #c---严重(critical),r---从异常情况恢复正常
              }

1.6.2主机组定义文件

将刚才定义的两个主机加入到主机组中,针对生产环境就像把所有的 MySQL 服务器加到一MySQL 主机组里,方便管理和查看。

[root@Nagios-Server ~]# vi /usr/local/nagios/etc/objects/hostgroups.cfg

define hostgroup

Unknown macro: { 
              hostgroup_name Nagios-Example #主机组名字 
              alias Nagios Example #主机组别名 
              members Nagios-Server,Nagios-Client 
              #主机组成员,用逗号隔开 
              }

1.6.3服务定义文件

服务定义文件定义你需要监控的对象的服务,比如本例子为检测主机是否存活,在后面会讲到如何监控其它服务,比如服务器负载、内存、磁盘等。

define service

Unknown macro: { 
              host_name Nagios-Server #主机名 
              service_description check-host-alive #服务描述 
              check_period 24x7 #检测的时间段 
              max_check_attempts 4 
              normal_check_interval 3 
              retry_check_interval 2 
              contact_groups sagroup 
              notification_interval 10 
              notification_period 24x7 
              notification_options w,u,c,r 
              check_command check-host-alive 
              }

define service

Unknown macro: { 
              host_name Nagios-Client 
              service_description check-host-alive 
              check_period 24x7 
              max_check_attempts 4 
              normal_check_interval 3 
              retry_check_interval 2 
              contact_groups sagroup 
              notification_interval 10 
              notification_period 24x7 
              notification_options w,u,c,r 
              check_command check-host-alive }

1.6.4服务组定义文件

[root@Nagios-Server ~]# vi /usr/local/nagios/etc/objects/servicegroup.cfg

define servicegroup

Unknown macro: { 
              servicegroup_name Host-Alive 
              alias Host Alive 
              members Nagios-Server,check-host-alive,Nagios-Client,check-host-alive
              }

1.6.5联系人定义文件

[root@Nagios-Server ~]# vi /usr/local/nagios/etc/objects/contacts.cfg

define contact

Unknown macro: { 
              contact_name nagiosadmin 
              use generic-contact 
              alias System Administrator 
              email nagios@localhost
              }

1.6.6联系人组定义文件

[root@Nagios-Server ~]# vi /usr/local/nagios/etc/objects/contactgroups.cfg

define contactgroup

Unknown macro: { 
              contactgroup_name sagroup 
              alias Nagios Administrators 
              members nagiosadmin 
              }

1.6.7启动Nagios

1> 修改配置文件所有者

[root@Nagios-Server ~]# chown -R nagios:nagios /usr/local/nagios/etc/objects/

2> 检测配置是否正确

[root@Nagios-Server ~]#

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

3> 启动 Nagios

[root@Nagios-Server ~]# /etc/init.d/httpd restart

1.6.8登陆验证配置





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值