ewr21 发表于 2014-12-25 08:26:37

nagios 目录、文件简介及服务配置

服务端目录介绍:
binNagios 可执行程序所在目录nagiosnagiostatsnrpe

etcNagios 配置文件所在目录 nagios.cfg 包含其它配置文件
htpasswd.users 密码文件       nrpe.cfg   客户端配置文件


sbinNagios CGI 文件所在目录,也就是执行外部命令所需文件所在的目录
histogram.cgi      showlog.cgi    statuswrl.cgi

shareNagios网页文件所在的目录
libexecNagios 外部插件所在目录check_ifstatus      check_nrpe
varNagios 日志文件、lock 等文件所在的目录 nagios.log

var/archivesNagios 日志自动归档目录
var/rw用来存放外部命令文件的目录

位置:etc/objects/
commands.cfg存放nagios命令相关配置(也可以指定commands目录),这里的命令不是系统的命令。而是实现把nagios里的命令和linux系统里的插件命令关联的一个文件

services.cfg    存放具体被监控的服务相关配置内容(上百台以上可以指定services目录,默认无)


hosts.cfg       存放具体被监控的主机相关配置(上百台以上可以指定hosts目录,默认不存在)


contacts.cfg    存放报警联系人相关的配置文件

timeperiods.cfg 存放报警周期时间等相关配置

templates.cfg~模版配置文件,模版的存在是为了方便的配置服务配置,类似shell的函数。
服务端主配置文件简介及配置准备

文件生成:

          到etc/objects利用localhost.cfg 生成hosts.cfg文件

          head -51 localhost.cfg >hosts.cfg
          chown-R nagios.nagios hosts.cfg
          创建serveses.cfg文件
          touch services.cfg
          chown-R nagios.nagiosservices.cfg

注意备份:tar zcvfetc.nagios.tar.gz etc/
          vi nagios.cfg +34
          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= 包含的
添加 :   cfg_file=/usr/local/nagios/etc/objects/services.cfg
          cfg_file=/usr/local/nagios/etc/objects/hosts.cfg

          39 #cfg_file=/usr/local/nagios/etc/objects/localhost.cfg
          #不使用localhost.cfg(本机的监控):

          53 # directive as shown below:
          55 #cfg_dir=/usr/local/nagios/etc/servers
          #注意:nagios 也可以包含目录
          x保存退出

         118 status_update_interval=5
         #监控状态更新间隔
         164command_check_interval=2
         #尽可能的检测参数,不要-1

         384 max_service_check_spread=30
         #最大的服务检查间隔



---------------------------------------------------------------------------------------------

服务端检测服务配置:vi /usr/local/nagios/etc/objects、hosts.cfg
#被监控主机的节点

define host{
      use               linux-server
                        #->/usr/local/nagios/etc/objects/templates.cfg基于模版                host_name               主机名
      alias               别名
      address             节点ip
      }
主机分组:
define hostgroup{
      hostgroup_namelinux-servers
      alias         Linux Servers
      members         nagios-server22,nagios-server23
                }
#逗号,分隔主机
-----------------------------------------------------------------------------------------

vi/usr/local/nagios/etc/objects/serveses.cfg
#定义一个监控的服务:
define service{
      use                      generic-service ;服务模版
      host_name                nagios;监控主机名
      service_description      Disk Partition ;监控磁盘分区
      check_command          check_nrpe!checck_disk ;监控命令
}
------------------------------------------------------------------------------------------

vi/usr/local/nagios/etc/objects/commands.cfg
#定义一个监控的命令

# 'check_nrpe' command definition
define command{
      command_name    check_nrpe
      command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
      }
-H 主机地址 -c指定参数(客户端check名,不可以随便更改)
范例:/usr/local/nagios/libexec/check_nrpe-H 10.0.0.22 -c check_disk

检查语法:/etc/init.d/nagios checkconfig   (无具体的错误信息)
            通过修改:vim /etc/init.d/nagios+183
            183               $NagiosBin -v $NagiosCfgFile   

                              #显示错误信息

或者:/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

重启完毕:/etc/init.d/nagios reload




nagios报错Connection refused by host
排查时根据nagios监控原理排查
客户端 /usr/local/nagios/libexec/check_nrpe-H 10.0.0.23 -c check_disk
防火墙关闭
selinux 关闭
nrpe守护进程是否启动
ss检查端口是否正常
nrpe.cfg 中是否允许服务端连接
是否定义检查的命令
检查检测命名是否有x权限



服务端:/etc/init.d/nagios reload
在配置文件问否正确
检测命令名是否正确;

页: [1]
查看完整版本: nagios 目录、文件简介及服务配置