1、验证Nagios配置文件的正确性

  nagios在验证配置文件方面做的非常到位,只需通过一个命令即可完成:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Nagios提供的这个验证功能非常有用,在错误信息中通常会打印出错误的配置文件以及文件中的哪一行,这使得nagios的配置变得非常容易,报警信息通常是可以忽略的,因为一般那些只是建议性的。
2、 启动与停止nagios
(1)启动nagios
通过初始化脚本启动nagios
/etc/init.d/nagios start
或者
Service nagios start
     手工方式启动nagios
通过nagios命令的“-d”参数来启动nagios守护进程:
/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
 
(2)关闭nagios
  通过初始化脚本关闭nagios服务
/etc/init.d/nagios stop
或者
Service nagios stop
    通过kill方式关闭nagios
kill
 
2、 启动与停止nagios
  通过初始化脚本来重启nagios
/etc/rc.d/init.d/nagios reload
/etc/rc.d/init.d/nagios restart
通过web监控页重启nagios,如下图所示:

运维监控利器Nagios之:Nagios的日常维护和管理_第1张图片

(3)重启nagios
     手工方式平滑重启
kill -HUP ,下图是一个主机状态图:

运维监控利器Nagios之:Nagios的日常维护和管理_第2张图片

3、 nagios故障通知
如下图所示:

运维监控利器Nagios之:Nagios的日常维护和管理_第3张图片

运维监控利器Nagios之:Nagios的日常维护和管理_第4张图片

 
4、 nagios性能分析图表
 
(1)nagios性能分析图表的作用
     Nagios对服务或主机监控的是一个瞬时状态,有时候系统管理员如果需要了解主机在一段时间内的性能以及服务的响应状态,并且形成图表时,就需要通过查看日志数据来分析,但是这种方式不但繁琐,而且抽象,不过幸运的是,PNP可以帮助我们来完成这个工作。
 
(2) PNP的概念与安装环境
     PNP是一个小巧的开源软件包,它基于PHP和PERL,PNP可以利用rrdtool工具将Nagios采集的数据绘制成相关的图表,然后显示主机或者服务在一段时间内的运行状况。
PNP官方网站为:http://www.pnp4nagios.org
如果要安装PNP,首先需要安装如下环境:
1:整合后的apache和PHP环境,需支持GD\zlib\jpeg
2:安装rrdtool工具
3:安装perl
 
(3)安装PNP
 
RRDtool是一个图表生成工具,可以从http://www.mrtg.org/rrdtool/获得信息。
 
这里下载的版本是rrdtool-1.4.5.tar.gz,安装过程如下:
 
[root@nagios rrdtool]# tar zxvf rrdtool-1.4.5.tar.gz   
[root@nagios rrdtool]# cd rrdtool-1.4.5 
[root@nagios rrdtool-1.4.5]# ./configure --prefix=/usr/local/rrdtool 
[root@nagios rrdtool-1.4.5]# make 
[root@nagios rrdtool-1.4.5]# make install 
 
接着安装PNP,这里下载的版本是pnp-0.4.13.tar.gz,安装过程如下:
[root@nagios pnp]#tar -xvzf pnp-0.4.13.tar.gz 
[root@nagios pnp]#cd pnp-0.4.13 
[root@nagios pnp-0.4.13]#./configure --with-nagios-user=nagios \ 
--with-nagios-group-nagios \ 
--with-rrdtool=/usr/local/rrdtool/bin/rrdtool \ 
--with-perfdata-dir=/usr/local/nagios/share/perfdata 
[root@nagios pnp-0.4.13]#make all 
[root@nagios pnp-0.4.13]#make install 
[root@nagios pnp-0.4.13]#make install-config 
[root@nagios pnp-0.4.13]#make install-init
 
安装完成,PNP默认文件放置情况如下:
General Options:
-----------------------------       -------------------
  Nagios user/group:                nagios nagios
  Install directory:                /usr/local/nagios
  HTML Dir:                         /usr/local/nagios/share/pnp
  Config Dir:                       /usr/local/nagios/etc/pnp
  Path to rrdtool:                  /usr/local/bin/rrdtool (Version 1.4.5)
  RRDs Perl Modules:                *** NOT FOUND ***
  RRD Files stored in:              /usr/local/nagios/share/perfdata
  process_perfdata.pl Logfile:      /usr/local/nagios/var/perfdata.log
  Perfdata files (NPCD) stored in:  /usr/local/nagios/var/spool/perfdata/
-------------------------------------------------------------------------
 
(4)设置PNP
① 创建默认配置文件 
cd  /usr/local/nagios/etc/pnp/
cp process_perfdata.cfg-sample process_perfdata.cfg 
cp npcd.cfg-sample npcd.cfg
cp rra.cfg-sample rra.cfg 
chown -R nagios:nagios *
② 修改process_perfdata.cfg文件
vi /usr/local/nagios/etc/pnp/process_perfdata.cfg
LOG_FILE = /usr/local/nagios/var/perfdata.log 
# Loglevel 0=silent 1=normal 2=debug 
LOG_LEVEL = 2 
这里将日志级别改为2,即为debug模式。
 
(5)修改nagios配置文件
①增加小太阳标示
修改templates.cfg,增加一个定义PNP的hosts和services
define host {
        name       hosts-pnp
        register   0
        action_url /nagios/pnp/index.php?host=$HOSTNAME$
        process_perf_data               1
 
}
define service {
        name       services-pnp
        register   0
        action_url /nagios/pnp/index.php?host=$HOSTNAME$&srv=$SERVICEDESC$
        process_perf_data               1
 
}
②修改nagios.cfg
找到如下几项,去掉注释,修改后信息如下:
process_performance_data=1 
host_perfdata_command=process-host-perfdata 
service_perfdata_command=process-service-perfdata
 
③修改commands.cfg
 
# 'process-host-perfdata' command definition
define command{
 
        command_name    process-host-perfdata
        command_line /usr/local/nagios/libexec/process_perfdata.pl
}
 
# 'process-service-perfdata' command definition
 
define command{
        command_name    process-service-perfdata
        command_line /usr/local/nagios/libexec/process_perfdata.pl
}
 
 
④修改hosts.cfg文件和services.cfg文件
 
define host{
        use                     linux-server,hosts-pnp
        host_name               web
        alias                   ixdba-web
        address                 192.168.12.251
        }
 
define host{
        use                     linux-server,hosts-pnp
        host_name               mysql
        alias                   ixdba-mysql
        address                 192.168.12.237
        }
 
define service{
        use                             local-service,services-pnp
        host_name                       mysql
        service_description             SSH
        check_command                   check_ssh
        }
define service{
        use                             local-service,services-pnp
        host_name                       web
        service_description             http
        check_command                   check_http
        }
 
(5)测试PNP功能
 
所有配置完成之后,重新检查nagios配置文件是否正确,然后重启nagios
/etc/init.d/nagios restart
如果配置正确,此时就会生成响应主机的pnp文件
[root@nagios web]# pwd
/usr/local/nagios/share/perfdata/web
[root@gaojf web]# ls
http.rrd  http.xml  PING.rrd  PING.xml  SSHD.rrd  SSHD.xml
最后打开网页:
打开网页http://IP/nagios,选择主机选项,然后点击小太阳就可以看到图表,或者访问http://ip/nagios/pnp也可以直接访问图表信息。如下图所示:

运维监控利器Nagios之:Nagios的日常维护和管理_第5张图片

未完待续!