; nagios-2
Documents
Resources
Learning Center
Upload
Plans & pricing Sign in
Sign Out
Your Federal Quarterly Tax Payments are due April 15th Get Help Now >>

nagios-2

VIEWS: 2 PAGES: 44

  • pg 1
									                       Nagios 配置学习手记-续-完整版




Nagios 配置学习手记-续-完整版




        2005.06.01
        chnl@163.com




        第 1 页                      6/3/2006
                                                                                                       Nagios 配置学习手记-续-完整版




                                                                  目录

目录..................................................................................................................................................2
一、前言..........................................................................................................................................5
二、安装..........................................................................................................................................6
  (一)Nagios 端......................................................................................................................6
     1、安装文件列表..................................................................................................................6
     2、安装账号及目录..............................................................................................................6
     3、其他..................................................................................................................................7
  (二)Nrpe 端..........................................................................................................................7
     1、nrpe 的安装......................................................................................................................7
三、配置..........................................................................................................................................8
  (一)Nagios 部分..................................................................................................................8
     1、nagios.cfg.........................................................................................................................8
     2、minimal.cfg....................................................................................................................10
     3、resource.cfg....................................................................................................................12
     4、cgi.cfg.............................................................................................................................12
     5、commands.cfg................................................................................................................13
     6、hosts.cfg.........................................................................................................................15
     7、services.cfg.....................................................................................................................20
  (二)Httpd(Apache)部分...............................................................................................28
  1、nagios.conf........................................................................................................................28
     2、.htaccess.........................................................................................................................29
       3、htpasswd.users .............................................................................................................29
  (三)Nrpe 部分....................................................................................................................30
     1、nrpe.cfg...........................................................................................................................30
四、Notify 脚本.............................................................................................................................31
  (一)Email 通知部分..........................................................................................................31
     1、EmailSend.jar.................................................................................................................31
     2、EmailNotify.cfg..............................................................................................................31
     3、dest.addr.........................................................................................................................32
  (二)QQ 通知部分.................................................................................................................32
     1、TextQQ...........................................................................................................................32
     2、QqNotify.cfg 及 dest.qq..................................................................................................33
     3、qq.sh 及 qq.exp...............................................................................................................33
  (三)alert_sender.sh 部分....................................................................................................34
     1、脚本内容........................................................................................................................34
     2、简单说明........................................................................................................................37
五、启动........................................................................................................................................38
     1、Nrpe................................................................................................................................38
     2、Nagios............................................................................................................................38

                                                                    第 2 页                                                           6/3/2006
                                                                                                    Nagios 配置学习手记-续-完整版



   3、Httpd(Apache)................................................................................................................38
六、使用及测试.............................................................................................................................39
   1、登陆................................................................................................................................39
   2、功能截图........................................................................................................................40
   3、测试................................................................................................................................43
附录:............................................................................................................................................43
   Nagios 部分:.........................................................................................................................43
   Httpd 部分:...........................................................................................................................44
   Nrpe 部分:............................................................................................................................44
   Notify 部分:.........................................................................................................................44




                                                                   第 3 页                                                         6/3/2006
                                    Nagios 配置学习手记-续-完整版




                        说明
  本文是上一篇文章<Nagios 配置学习手记>的后续版本。主要内容

为对 command(plugins)/host/service 的配置及对主机/应用监控具体实

现。其中内容包括:

  配置了 commands/hosts/services 实例;

  采用从源码编译方式安装;

  添加了 Nrpe 支持,对远程主机的本地资源进行监控;

  采用统一的 Notify 接口方式,添加了多种通知方式的实现,包括

Smtp 方式的 Email、QQ;

  MSN/SMS 方式在本文没有讨论。 SMS 虽然内部通过 http 方式实

现,但不具有通用性; Msn 实现方式可以参照 QQ 。 QQ 使用的是

TextQQ(一个采用 LumaQQ 核心的 QQ 项目)。关于 Msn,还没有找

到比较好的 Linux 下支持 CLI 操作的软件,如果有谁知道合适的,

希望推荐。

  主机操作系统为 AS3U5。

  本文主要参考 Nagios 的官方文档 Nagios_2_0_Docs.pdf 而成。

  以下文中所列出的配置文件及脚本,皆在我的系统的真实环境测

试通过,可以经过简单修改后使用。但在此生命,并不保证在所有的

环境下皆能正常运行。本文档的所有权归 chenl(chnl@163.com)所有,

使用 GPL 发布,可以自由拷贝,转载,转载时请保持文档的完整性,

严禁用于任何商业用途。



                        第 4 页                   6/3/2006
                                               Nagios 配置学习手记-续-完整版




一、前言


   关于本文档前一部分的相关信息,请参阅:

http://www.cublog.cn/u/1589/showart.php?id=114110 ,或

http://blog.donews.com/chnl/archive/2006/05/17/873481.aspx




                               第 5 页                         6/3/2006
                                                Nagios 配置学习手记-续-完整版




二、安装


     关于安装部分,上篇文章已经作了介绍。所不同的是,本次多了

nrpe , 并 且 采 用 源 码 方 式 。 如 果 安 装 出 现 问 题 , 可 以 参 考

http://www.novell.com/coolsolutions/feature/16723.html 。


(一)Nagios 端


1、安装文件列表


     我的系统中默认已经安装有 gd。如果系统中没有 gd 存在,需要先

安装 gd。

     以下文件,皆可在 Nagios 的官方网站下载。
nagios-2.3.1.tar.gz
nagios-plugins-1.4.3.tar.gz



2、安装账号及目录


     安装建议在操作系统中建立(useradd)Nagios 单独的系统账号, 本

例中使用 nagios 用户,其主目录为/home/cl/nagios。其中:

     nagios 的安装目录为: /home/cl/nagios/dist

     plugins 的安装目录为: /home/cl/nagios/dist/libexec

     要确认 nagios 对所有这些目录有读写的权限。另外,要保证 httpd

Server 的账号对 nagios 的 cgi 及 html 有读及执行的权限,比较常规


                               第 6 页                        6/3/2006
                                          Nagios 配置学习手记-续-完整版




的做法是把 httpd Server 的用户,如 apache,加入到 nagios 组中,并

设置相应的权限。

   如果需要 Nagios 在开机的时候自动启动,则需要把相应的 init 脚

本 copy 至 /etc/init.d 目录下,改名为 nagios ,并执行 chkconfig –add

nagios 命令来添加(Redhat 系统),具体请参阅这方面的文档。


3、其他


   Notify 脚本的部分需要 Java/Expect 的环境支持。 QQ 通知部分,

需要 Jdk1.5 及 expect 支持。email 通知部分,Jdk1.4 以上版本即可。


(二)Nrpe 端


1、nrpe 的安装


   此例中,Nrpe 安装使用的文件版本为 nrpe-2.5.1.tar.gz,与 Nagios

端的安装一样,Nrpe 需要建立自己的操作系统用户,为了统一管理,

仍然使用 nagios,其主目录为/home/cl/nagios。其中:


   nrpe 的安装目录为: /home/cl/nagios/nrpe

   要确认 nagios 对所有这些目录有读写的权限。

   如果需要 Nrpe 在开机的时候自动启动,则需要把相应的 init 脚本

放 copy 至 /etc/init.d 目 录 下 , 改 名 为 nrpe , 并 执 行 chkconfig –add

nrpe 命令来添加(Redhat 系统),具体请参阅这方面的文档。


                            第 7 页                      6/3/2006
                                                       Nagios 配置学习手记-续-完整版




三、配置


将会被讨论的配置文件列表为:

Nagios:

nagios.cfg minimal.cfg resource.cfg cgi.cfg commands.cfg hosts.cfg

services.cfg

Httpd(Apache):

nagios.conf          .htaccess htpasswd.users

Nrpe:

nrce.cfg

     部分修改过的重要配置将被标红处理。


(一)Nagios 部分


     此 例 中 , Nagios 安 装 后 配 置 文 件 所 在 的 目 录 为

/home/cl/nagios/dist/etc。


1、nagios.cfg


     这是 Nagios 的主配置文件。大部分的全局配置都在这个文件中,

其他配置文件可以利用 cfg_file 指令来引用。

本例中 nagios.cfg 文件内容如下:
log_file=/home/cl/nagios/dist/var/nagios.log
#以下四行,为自定义的 Command/Hosts/Services 及 minimal.cfg 文件,将会在下面讨论。


                                               第 8 页               6/3/2006
                                                              Nagios 配置学习手记-续-完整版



cfg_file=/home/cl/nagios/dist/etc/commands.cfg
cfg_file=/home/cl/nagios/dist/etc/hosts.cfg
cfg_file=/home/cl/nagios/dist/etc/services.cfg
cfg_file=/home/cl/nagios/dist/etc/minimal.cfg
object_cache_file=/home/cl/nagios/dist/var/objects.cache
resource_file=/home/cl/nagios/dist/etc/resource.cfg
status_file=/home/cl/nagios/dist/var/status.dat
nagios_user=nagios
nagios_group=nagios
check_external_commands=0
command_check_interval=-1
command_file=/home/cl/nagios/dist/var/rw/nagios.cmd
comment_file=/home/cl/nagios/dist/var/comments.dat
downtime_file=/home/cl/nagios/dist/var/downtime.dat
lock_file=/home/cl/nagios/dist/var/nagios.lock
temp_file=/home/cl/nagios/dist/var/nagios.tmp
event_broker_options=-1
log_rotation_method=d
log_archive_path=/home/cl/nagios/dist/var/archives
use_syslog=1
log_notifications=1
log_service_retries=1
log_host_retries=1
log_event_handlers=1
log_initial_states=0
log_external_commands=1
log_passive_checks=1
service_inter_check_delay_method=s
max_service_check_spread=30
service_interleave_factor=s
host_inter_check_delay_method=s
max_host_check_spread=30
max_concurrent_checks=0
service_reaper_frequency=10
auto_reschedule_checks=0
auto_rescheduling_interval=30
auto_rescheduling_window=180
sleep_time=0.25
#如果自定义的 command 或者 notify 的脚本运行时间比较长,则需要把 Timeout 修改的大一些。
service_check_timeout=60
host_check_timeout=30
event_handler_timeout=30
notification_timeout=60
ocsp_timeout=5


                                                      第 9 页               6/3/2006
                                                              Nagios 配置学习手记-续-完整版



perfdata_timeout=5
retain_state_information=1
state_retention_file=/home/cl/nagios/dist/var/retention.dat
retention_update_interval=60
use_retained_program_state=1
use_retained_scheduling_info=0
interval_length=60
use_aggressive_host_checking=0
execute_service_checks=1
accept_passive_service_checks=1
execute_host_checks=1
accept_passive_host_checks=1
enable_notifications=1
enable_event_handlers=1
process_performance_data=0
obsess_over_services=0
check_for_orphaned_services=0
check_service_freshness=1
service_freshness_check_interval=60
check_host_freshness=0
host_freshness_check_interval=60
aggregate_status_updates=1
status_update_interval=15
enable_flap_detection=0
low_service_flap_threshold=5.0
high_service_flap_threshold=20.0
low_host_flap_threshold=5.0
high_host_flap_threshold=20.0
date_format=us
p1_file=/home/cl/nagios/dist/bin/p1.pl
illegal_object_name_chars=`~!$%^&*|'"<>?,()=
illegal_macro_output_chars=`~$&|'"<>
use_regexp_matching=0
use_true_regexp_matching=0
admin_email=nagios
admin_pager=pagenagios
daemon_dumps_core=0




2、minimal.cfg


     此配置文件中,主要设定了有关 Notify 的参数及 Timeperiod 等。

                                                     第 10 页               6/3/2006
                                                                                     Nagios 配置学习手记-续-完整版




本来在其中配置的 commands/hosts/services 等都放在了其他单独的文

件中。

内容如下:
define timeperiod{
         timeperiod_name 24x7
         alias         24 Hours A Day, 7 Days A Week
         sunday         00:00-24:00
         monday          00:00-24:00
         tuesday        00:00-24:00
         wednesday        00:00-24:00
         thursday       00:00-24:00
         friday        00:00-24:00
         saturday       00:00-24:00
         }
define command{
         command_name        notify-by-email
             command_line        /home/cl/nagios/dist/libexec/alert_sender.sh '** $NOTIFICATIONTYPE$ alert -
$HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **'                        '***** Nagios     *****\n\nNotification Type:
$NOTIFICATIONTYPE$\n\nService:                        $SERVICEDESC$\nHost:                 $HOSTALIAS$\nAddress:
$HOSTADDRESS$\nState:                 $SERVICESTATE$\n\nDate/Time:               $LONGDATETIME$\n\nAdditional
Info:\n\n$SERVICEOUTPUT$' >>/home/cl/nagios/dist/libexec/alert_sender.log 2>&1 &
         }
define command{
         command_name        host-notify-by-email
                  command_line        /home/cl/nagios/dist/libexec/alert_sender.sh    'Host $HOSTSTATE$ alert for
$HOSTNAME$!'               '*****     Nagios         *****\n\nNotification   Type:    $NOTIFICATIONTYPE$\nHost:
$HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time:
$LONGDATETIME$\n' >>/home/cl/nagios/dist/libexec/alert_sender.log 2>&1 &
         }
define contact{
         contact_name                 nagios-admin
         alias                   Nagios Admin
         service_notification_period      24x7
         host_notification_period        24x7
         service_notification_options      w,u,c,r
         host_notification_options       d,r
         service_notification_commands notify-by-email
         host_notification_commands            host-notify-by-email
         email                   chnl@163.com
         }
define contactgroup{


                                                         第 11 页                                         6/3/2006
                                                            Nagios 配置学习手记-续-完整版



         contactgroup_name       admins
         alias           Nagios Administrators
         members             nagios-admin
         }

     在 两 个 Notify 的 command 中 , 我 们 都 调 用 了 同 一 个 脚 本

/home/cl/nagios/dist/libexec/alert_sender.sh。

     注意,脚本引用的所有的参数一定要用单引号”' “引起来。

     另外,在 contact 中定义的 email 地址其实已经没有实际意义,因

为 Notify 的脚本调用的是自己的配置文件。


3、resource.cfg


     此配置文件中,主要定义资源相关的选项,本例中,只定义了

plugins 所在的目录位置。

内容如下:
$USER1$=/home/cl/nagios/dist/libexec



4、cgi.cfg


     此配置文件中,定义了 cgi 相关的选项,诸如配置文件位置,

HTML 文件位置,URL,系统安全性等。

内容如下:
main_config_file=/home/cl/nagios/dist/etc/nagios.cfg
physical_html_path=/home/cl/nagios/dist/share
url_html_path=/nagios
show_context_help=0
#以下修改配置 CGI 需要认证,且用户 nagios 用于全部权限。
use_authentication=1
authorized_for_system_information=nagios
authorized_for_configuration_information=nagios
authorized_for_system_commands=nagios


                                                   第 12 页               6/3/2006
                                                                    Nagios 配置学习手记-续-完整版



authorized_for_all_services=nagios
authorized_for_all_hosts=nagios
authorized_for_all_service_commands=nagios
authorized_for_all_host_commands=nagios
default_statusmap_layout=5
default_statuswrl_layout=4
ping_syntax=/bin/ping -n -U -c 5 $HOSTADDRESS$
refresh_rate=90



5、commands.cfg


     此文件中为 nagios 进行系统检测所使用的 command。每个命令,

都可以跟-h 参数来获得使用说明。

     除了默认的命令,用户可以根据自己的需要进行相应的开发。开

发的规范,可以参阅 Nagios 的官方文档。

内容如下:
define command{
         command_name        check-host-alive
         command_line     $USER1$/check_ping -H $HOSTADDRESS$ -w 99,99% -c 100,100% -p 1
         }
define command{
         command_name        check_ping
         command_line     $USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5
         }
define command{
         command_name        check_local_disk
         command_line     $USER1$/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$
         }
define command{
         command_name        check_local_users
         command_line     $USER1$/check_users -w $ARG1$ -c $ARG2$
         }
define command{
         command_name        check_local_procs
         command_line     $USER1$/check_procs -w $ARG1$ -c $ARG2$
         }
define command{
         command_name        check_local_load


                                                 第 13 页                                6/3/2006
                                                                  Nagios 配置学习手记-续-完整版



        command_line   $USER1$/check_load -w $ARG1$ -c $ARG2$
        }
define command{
        command_name    check_dns
        command_line   $USER1$/check_dns -H www.yahoo.com -s $HOSTADDRESS$
        }
define command{
        command_name    check_ftp
        command_line   $USER1$/check_ftp -H $HOSTADDRESS$
        }
define command{
        command_name    check_hpjd
        command_line   $USER1$/check_hpjd -H $HOSTADDRESS$ -C public
        }
define command{
        command_name    check_http
        command_line   $USER1$/check_http -H $HOSTADDRESS$ -u $ARG1$ -w $ARG2$ -c $ARG3$
        }
define command{
        command_name    check_nntp
        command_line   $USER1$/check_nntp -H $HOSTADDRESS$
        }
define command{
        command_name    check_pop
        command_line   $USER1$/check_pop -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$
        }
define command{
        command_name    check_smtp
        command_line   $USER1$/check_smtp -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$
        }
define command{
        command_name    check_tcp
        command_line   $USER1$/check_tcp -H $HOSTADDRESS$ -p $ARG1$
        }
define command{
        command_name    check_telnet
        command_line   $USER1$/check_tcp -H $HOSTADDRESS$ -p 23
        }
define command{
        command_name    check_udp
        command_line   $USER1$/check_udp -H $HOSTADDRESS$ -p $ARG1$
        }
#为了安全原因,我的 nrpe 没有跑在默认端口,因此在此指定端口为 7866。
define command{


                                           第 14 页                                6/3/2006
                                                                                             Nagios 配置学习手记-续-完整版



         command_name        check_nrpe
         command_line     $USER1$/check_nrpe -H $HOSTADDRESS$ -p 7866 -c $ARG1$
         }

     以 check_smtp 命 令 为 例 , “ $USER1$/check_smtp -H

$HOSTADDRESS$ -w $ARG1$ -c $ARG2$“ 中, $HOSTADDRESS$

在使用中将被替换为引用主机的 IP 地址,”-w $ARG1$ -c $ARG2$”

将会被替换为 warning 及 critical 的阀值。这样在 hosts/services 中配置

使用命令,将会简单的多。


6、hosts.cfg


     此配置文件中,定义了所有将会被监控的主机。

内容如下:
define host{
         name                    generic-host             ; The name of this host template
         notifications_enabled            1           ; Host notifications are enabled
         event_handler_enabled                1         ; Host event handler is enabled
         flap_detection_enabled               1        ; Flap detection is enabled
         failure_prediction_enabled           1          ; Failure prediction is enabled
         process_perf_data                1           ; Process performance data
         retain_status_information            1         ; Retain status information across program restarts
         retain_nonstatus_information             1       ; Retain non-status information across program restarts
         register                0        ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST
A TEMPLATE!
         }
define host{
         use             generic-host                   ; Name of host template to use
         host_name              www
         alias           www
         address           202.106.196.45
         check_command            check-host-alive
         max_check_attempts          10
         notification_interval 120
         notification_period     24x7
         notification_options    d,r
         contact_groups admins


                                                               第 15 页                                               6/3/2006
                                                                                  Nagios 配置学习手记-续-完整版



         }
define host{
         use             generic-host            ; Name of host template to use
         host_name              clhost
         alias           clhost
         address           202.106.196.159
         check_command               check-host-alive
         max_check_attempts           10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host            ; Name of host template to use
         host_name              mlserver
         alias           mlserver
         address           202.106.196.60
         check_command               check-host-alive
         max_check_attempts           10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host            ; Name of host template to use
         host_name              cncw
         alias           cncw
         address           202.106.196.61
         check_command               check-host-alive
         max_check_attempts           10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host            ; Name of host template to use
         host_name              db
         alias           db
         address           202.106.196.146
         check_command               check-host-alive
         max_check_attempts           10


                                                        第 16 页                                6/3/2006
                                                                                    Nagios 配置学习手记-续-完整版



         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host              ; Name of host template to use
         host_name              bjmc
         alias           bjmc
         address           202.106.196.58
         check_command                 check-host-alive
         max_check_attempts             10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host              ; Name of host template to use
         host_name              bjlt
         alias           bjlt
         address           202.106.196.157
         check_command                 check-host-alive
         max_check_attempts             10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host              ; Name of host template to use
         host_name              www-i
         alias           www-i
         address           10.10.0.104
         check_command                 check-host-alive
         max_check_attempts             10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host              ; Name of host template to use
         host_name              clhost-i


                                                          第 17 页                                6/3/2006
                                                                                Nagios 配置学习手记-续-完整版



         alias           clhost-i
         address           10.10.0.101
         check_command             check-host-alive
         max_check_attempts            10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host          ; Name of host template to use
         host_name              mlserver-i
         alias           mlserver-i
         address           10.10.0.102
         check_command             check-host-alive
         max_check_attempts            10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host          ; Name of host template to use
         host_name              cncw-i
         alias           cncw-i
         address           10.10.0.112
         check_command             check-host-alive
         max_check_attempts            10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host          ; Name of host template to use
         host_name              db-i
         alias           db-i
         address           10.10.0.103
         check_command             check-host-alive
         max_check_attempts            10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins


                                                      第 18 页                                6/3/2006
                                                                                 Nagios 配置学习手记-续-完整版



         }
define host{
         use             generic-host           ; Name of host template to use
         host_name              bjmc-i
         alias           bjmc-i
         address           10.10.0.111
         check_command              check-host-alive
         max_check_attempts          10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host           ; Name of host template to use
         host_name              bjlt-i
         alias           bjlt-i
         address           10.10.0.113
         check_command              check-host-alive
         max_check_attempts          10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define host{
         use             generic-host           ; Name of host template to use
         host_name              gateway
         alias           gateway
         address           202.106.196.1
         check_command              check-host-alive
         max_check_attempts          10
         notification_interval 120
         notification_period      24x7
         notification_options     d,r
         contact_groups admins
         }
define hostgroup{
         hostgroup_name Servers-e
         alias       External Servers
         members        cncw,mlserver,db,www,clhost,bjmc,bjlt
         }
define hostgroup{
         hostgroup_name Servers-i


                                                       第 19 页                                6/3/2006
                                                                                                Nagios 配置学习手记-续-完整版



          alias         Internal Servers
          members          cncw-i,mlserver-i,db-i,www-i,clhost-i,bjmc-i,bjlt-i
          }

      在配置中,可以使用模板 (use generic-host) 的形式减少配置的工

作 量 。 各 个 主 机 也 可 以 根 据具 体情 况, 配置 max_check_attempts

notification_interval 等选项。 hostgroup 的定义,可以使得相类似的
                          而

主机,在同一视图中得到体现。


7、services.cfg


      此配置文件中,定义了所有将会被监控的服务。

内容如下:
define service{
          name                     generic-service ; The 'name' of this service template
          active_checks_enabled                 1          ; Active service checks are enabled
          passive_checks_enabled                 1          ; Passive service checks are enabled/accepted
          parallelize_check              1           ; Active service checks should be parallelized (disabling this can lead to
major performance problems)
          obsess_over_service                1            ; We should obsess over this service (if necessary)
          check_freshness               0            ; Default is to NOT check service 'freshness'
          notifications_enabled             1            ; Service notifications are enabled
          event_handler_enabled                  1         ; Service event handler is enabled
          flap_detection_enabled               1          ; Flap detection is enabled
          failure_prediction_enabled             1          ; Failure prediction is enabled
          process_perf_data                1             ; Process performance data
          retain_status_information              1         ; Retain status information across program restarts
          retain_nonstatus_information               1       ; Retain non-status information across program restarts
          register                  0            ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL SERVICE,
JUST A TEMPLATE!
          }
define service{
          use                     generic-service                 ; Name of service template to use
           host_name                       cncw,mlserver,db,www,clhost,bjmc,bjlt,cncw-i,mlserver-i,db-i,www-i,clhost-
i,bjmc-i,bjlt-i,gateway
          service_description              PING
          is_volatile               0
          check_period                  24x7


                                                                  第 20 页                                               6/3/2006
                                                                                     Nagios 配置学习手记-续-完整版



         max_check_attempts                  1
         normal_check_interval               1
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_ping!100.0,20%!500.0,60%
         }
define service{
         use                     generic-service          ; Name of service template to use
         host_name                     mlserver-i
         service_description             Root Partition
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_local_disk!20%!10%!/
         }
define service{
         use                     generic-service          ; Name of service template to use
         host_name                     mlserver-i
         service_description             Current Users
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_local_users!20!50
         }
define service{
         use                     generic-service          ; Name of service template to use
         host_name                     mlserver-i
         service_description             Total Processes
         is_volatile               0


                                                          第 21 页                                 6/3/2006
                                                                                   Nagios 配置学习手记-续-完整版



         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_local_procs!250!400
         }
define service{
         use                     generic-service        ; Name of service template to use
         host_name                     mlserver-i
         service_description             Current Load
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_local_load!5.0,4.0,3.0!10.0,6.0,4.0
         }
define service{
         use                     generic-service        ; Name of service template to use
         host_name                     mlserver,mlserver-i
         service_description             Check Pop
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_pop!3!5
         }
define service{
         use                     generic-service        ; Name of service template to use
         host_name                     mlserver,mlserver-i
         service_description             Check Smtp


                                                        第 22 页                                 6/3/2006
                                                                                    Nagios 配置学习手记-续-完整版



         is_volatile               0
         check_period                  24x7
         max_check_attempts                   4
         normal_check_interval                5
         retry_check_interval             1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_smtp!3!5
         }
define service{
         use                     generic-service         ; Name of service template to use
         host_name                     mlserver, mlserver-i
         service_description             Check Http
         is_volatile               0
         check_period                  24x7
         max_check_attempts                   4
         normal_check_interval                5
         retry_check_interval             1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_http!/!1!3
         }
define service{
         use                     generic-service         ; Name of service template to use
         host_name                     www,www-i
         service_description             Check Http
         is_volatile               0
         check_period                  24x7
         max_check_attempts                   4
         normal_check_interval                5
         retry_check_interval             1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_http!/!1!3
         }
define service{
         use                     generic-service         ; Name of service template to use
         host_name                     clhost,clhost-i


                                                         第 23 页                                 6/3/2006
                                                                                  Nagios 配置学习手记-续-完整版



         service_description             Check Http
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_http!/sms/tv!1!3
         }
define service{
         use                     generic-service       ; Name of service template to use
         host_name                     cncw-i,db-i,www-i,clhost-i,db-i
         service_description             Check Nrpe Users
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_nrpe!check_users
         }
define service{
         use                     generic-service       ; Name of service template to use
         host_name                     cncw-i,db-i,www-i,clhost-i,db-i
         service_description             Check Nrpe Load
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_nrpe!check_load
         }
define service{
         use                     generic-service       ; Name of service template to use


                                                        第 24 页                                6/3/2006
                                                                                  Nagios 配置学习手记-续-完整版



         host_name                     cncw-i,db-i,www-i,clhost-i,db-i
         service_description             Check Nrpe Procs
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_nrpe!check_total_procs
         }
define service{
         use                     generic-service       ; Name of service template to use
         host_name                     cncw-i,db-i,www-i,clhost-i,db-i
         service_description             Check Nrpe Zombie Procs
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_nrpe!check_zombie_procs
         }
define service{
         use                     generic-service       ; Name of service template to use
         host_name                     cncw-i,db-i,www-i,clhost-i,db-i
         service_description             Check Nrpe Root Partition
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_nrpe!check_diskR
         }
define service{


                                                        第 25 页                                6/3/2006
                                                                                  Nagios 配置学习手记-续-完整版



         use                     generic-service       ; Name of service template to use
         host_name                     cncw-i,db-i,www-i,clhost-i,db-i
         service_description             Check Nrpe Usr Partition
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_nrpe!check_diskU
         }
define service{
         use                     generic-service       ; Name of service template to use
         host_name                     cncw-i,db-i,www-i,clhost-i,db-i
         service_description             Check Nrpe Home Partition
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_nrpe!check_diskH
         }
define service{
         use                     generic-service       ; Name of service template to use
         host_name                     cncw-i,db-i,www-i,clhost-i,db-i
         service_description             Check Nrpe Var Partition
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_nrpe!check_diskV
         }


                                                        第 26 页                                6/3/2006
                                                                                  Nagios 配置学习手记-续-完整版



define service{
         use                     generic-service       ; Name of service template to use
         host_name                     cncw-i,db-i,www-i,clhost-i,db-i
         service_description             Check Nrpe Backup Partition
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_nrpe!check_diskB
         }
define service{
         use                     generic-service       ; Name of service template to use
         host_name                     cncw-i,db-i,www-i,clhost-i,db-i
         service_description             Check Nrpe Data Partition
         is_volatile               0
         check_period                  24x7
         max_check_attempts                  4
         normal_check_interval               5
         retry_check_interval            1
         contact_groups                 admins
         notification_options            w,u,c,r
         notification_interval           960
         notification_period             24x7
         check_command                    check_nrpe!check_diskD
         }
define servicegroup{
         servicegroup_name MailServices
         alias         MailServices
         members          mlserver,Check Pop,mlserver,Check Smtp,mlserver,Check Http
         }
define servicegroup{
         servicegroup_name WebServices
         alias         WebServices
         members          mlserver,Check Http,www,Check Http,clhost,Check Http
         }

     同 hosts 的 配 置 一 样 , services 也 可 以 使 用 模 板 (use generic-

service )的形式减少配置的工作量。各个 Service 也可以根据具体情况

                                                        第 27 页                                6/3/2006
                                                                 Nagios 配置学习手记-续-完整版




配置 max_check_attempts notification_interval 等选项。 servicegroup
                                                而

的定义,可以使得相类似的服务,在同一视图中得到体现。

     以 服 务 Check Http 为 例 , 其 命 令 (check_command)

check_http!/!1!3 将会被解释为 check -H HostIP -u / -w 1 -c 3 ,就是

对主机的缺省页面 (/) 进行访问, Warning 的阀值为 1s , Critical 的阀

值为 3s。

     另外 check_nrpe 中所是使用的命令,不是在本地的 commands.cfg

中配置的。这些命令,都是远程 nrpe 主机上的,需要在下面讨论的

nrpe.cfg 中配置。


(二)Httpd(Apache)部分


     此例中使用 RedHat 默认安装的 Httpd Server。


1、nagios.conf


     此文件配置 cgi/html 文件的目录及相关的认证选项等。只要将此

文件放置在 /etc/httpd/conf.d 目录下, Apache 就会自动加载并处理该

文件。

内容如下:
ScriptAlias /nagios/cgi-bin /home/cl/nagios/dist/sbin
<Directory "/home/cl/nagios/dist/sbin">
AllowOverride AuthConfig
Options ExecCGI
Order allow,deny
Allow from all


                                                        第 28 页               6/3/2006
                                                           Nagios 配置学习手记-续-完整版



</Directory>
Alias /nagios /home/cl/nagios/dist/share
<Directory "/home/cl/nagios/dist/share">
Options None
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>



2、.htaccess


     此 文 件 为 web 认 证 的 配 置 文 件 , 需 要 放 在 Nagios

html ( home/cl/nagios/dist/sbin ) /cgi ( home/cl/nagios/dist/share )所在

的目录下。

内容如下:
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /home/cl/nagios/dist/etc/htpasswd.users
require valid-user



 3、htpasswd.users


     此 文 件 为 web 认 证 的 用 户 名 及 密 码 , 其 文 件 的 位 置 需 要 与

.httaccess 文件中配置的一致,并且可以被 httpd 所访问。文件采用以

下 的 命 令 生 成 : htpasswd -c /home/cl/nagios/dist/etc/htpasswd.users

nagios,之后输入 nagios 的密码就可以了。

内容如下:
nagios:xxxxxxxxxxx




                                                  第 29 页               6/3/2006
                                                                           Nagios 配置学习手记-续-完整版




(三)Nrpe 部分


     此 例 中 , Nrpe 安 装 后 配 置 文 件 所 在 的 目 录 为

/home/cl/nagios/nrpe/etc。


1、nrpe.cfg


     此 配 置 文 件 , 配 置 了 所 有 nrpe Deamon 所 需 要 的 环 境 及

check_nrpe 中所引用的命令。
pid_file=/home/cl/nagios/nrpe/var/run/nrpe.pid
server_port=7866
nrpe_user=nagios
nrpe_group=nagios
allowed_hosts=127.0.0.1,10.0.0.102,202.106.196.60
dont_blame_nrpe=0
debug=0
command_timeout=60
command[check_users]=/home/cl/nagios/nrpe/libexec/check_users -w 5 -c 10
command[check_load]=/home/cl/nagios/nrpe/libexec/check_load -w 15,10,5 -c 30,25,20
command[check_diskR]=/home/cl/nagios/nrpe/libexec/check_disk -w 500 -c 200 -p /
command[check_diskH]=/home/cl/nagios/nrpe/libexec/check_disk -w 500 -c 200 -p /home
command[check_diskU]=/home/cl/nagios/nrpe/libexec/check_disk -w 500 -c 200 -p /usr
command[check_diskV]=/home/cl/nagios/nrpe/libexec/check_disk -w 500 -c 200 -p /var
command[check_diskB]=/home/cl/nagios/nrpe/libexec/check_disk -w 1000 -c 500 -p /backup
command[check_diskD]=/home/cl/nagios/nrpe/libexec/check_disk -w 1000 -c 500 -p /data
command[check_zombie_procs]=/home/cl/nagios/nrpe/libexec/check_procs -w 5 -c 10 -s Z
command[check_total_procs]=/home/cl/nagios/nrpe/libexec/check_procs -w 150 -c 200

     用 户 为 nagios , 端 口 采 用 的 是 7866 , 没 有 采 用 默 认 端 口 。

allowed_hosts 参 数 配 置 的 , 允 许 对 自 己 访 问 的 主 机 列 表 为 :

127.0.0.1,10.0.0.102,202.106.196.60 ,其中 Nagios 端的 IP 地址必须在

此之内,否则 check_nrpe 命令的访问将会被拒绝。



                                                    第 30 页                               6/3/2006
                                                           Nagios 配置学习手记-续-完整版




四、Notify 脚本


    Notify 脚本包括三部分:Email 通知部分,QQ 通知部分,和控制

脚本 alert_sender.sh。


(一)Email 通知部分


    此部分包含一个 Java jar 文件 EmailSend.jar 和两个配置文件,

EmailNotify.cfg 及 dest.addr。


1、EmailSend.jar


    这个文件是我以前写过的一个发送测试 Email 的 Java 程序,此次

刚好利用了。此程序需要 Jdk1.4 以上版本的支持,使用方法为:
java -jar EmailSend.jar MtaAddr SrcMailAddr DestMailAddrFile Subject SrcFile SendTimes
[strPass]"


    如果有人对此文件感兴趣,可以直接用 Jad 反编译后察看,非常

简单的 ( 因为我本身对 Java 并不熟悉),只是对 SMTP Session 的操

作,或者也可以 Email 联系我,chnl@163.com 。



2、EmailNotify.cfg


    本文件 EmailSend 的配置文件。



                                       第 31 页                               6/3/2006
                                         Nagios 配置学习手记-续-完整版




内容如下:

MtaAddr=mail.163.com
SrcMailAddr=chnl@163.com
Pass=passwd
DestMailAddrFile=dest.addr
SendTimes=1
Email_Notify="Enable



3、dest.addr


     本文件的内容是 EmailSend 是调用的目的邮件地址。


内容如下:

dest@abc.com
nagios@163.com
chnl@163.com




(二)QQ 通知部分


     此部分包含 TextQQ 的程序文件;两个配置文件, QqNotify.cfg 及

dest.qq;两个脚本文件 qq.sh 及 qq.exp。

     其中 qq.exp 需要 Expect 环境支持。


1、TextQQ


     TextQQ 是一个采用 LumaQQ 核心的 Text-Based Qq 项目。TextQQ

最新版本需要 JDK1.5 版本支持。

     TextQQ 在 使 用 前 需 要 更 新 其 配 置 文 件 config.ini 中 的 qqno 及

                             第 32 页                  6/3/2006
                                                 Nagios 配置学习手记-续-完整版




qqpass 字段。详细情况请访问其官方网站。




2、QqNotify.cfg 及 dest.qq


         QqNotify.cfg 是 TextQQ 的配置文件。


内容如下:
Qq_Nofity="Enable"
DestQQFile=dest.qq



dest.qq 是 Notify 目标的 qq 号码。

内容如下:
31222343
55668789




3、qq.sh 及 qq.exp


         qq.sh 是执行 TextQQ 的一个脚本。主要是为了 qq.exp 的方便执行。


其内容如下:
#!/bin/sh
cd /home/cl/nagios/dist/libexec/im/qq
./tq.s

         qq.exp ,是一个执行 TextQQ ,并发送相关的 Notify 信息到指定

QQ 号码 Expect 脚本。因为 TextQQ 的执行是一个交互的过程,例如,

我们必须要等到 TextQQ 提示登陆成功之后,才可以发送消息。

Expect 脚本的主要功能就在这里。更详细的信息,请访问 Expect 的官


                                        第 33 页               6/3/2006
                                                                                Nagios 配置学习手记-续-完整版




方网站,http://expect.nist.gov/。


内容如下:
#!/usr/bin/expect
set qq "[lindex $argv 0]"
set sub "[lindex $argv 1]"
set cont "[lindex $argv 2]"
send_user "Start...\n"
spawn /home/cl/nagios/dist/libexec/im/qq/qq.sh
expect ">"
send "/m $qq Begin:---- $sub ---- $cont ----End. \n"
expect ">"
send "\n"
send "/q \n"
expect "press any key to continue..."
send "\n"
send_user "It's Finished.\n



(三)alert_sender.sh 部分


      所有的诸如 Email/QQ 等通知方式,都是通过此脚本的调用来实

现。alert_sender.sh 根据配置文件来决定是否采用 Email/QQ 或者其他

的 Notify 方式。


1、脚本内容


其内容如下:
#!/bin/sh
#########################################################################
#
# File:        alert_sender.sh
# Description: This script send the alert to appointed person with email, sms or other way.
# Language:       GNU Bourne-Again SHell
# Version: 1.5
# Date:             2005-05-29


                                                       第 34 页                                 6/3/2006
                                                                           Nagios 配置学习手记-续-完整版



# First Version write for the Bash Srcipt Monitor System, SysMon:
# Date:              2005-09-16
# Corp.:       Chenlei
# Author: chnl@163.com
#
#########################################################################


############################
#
# Exit values:
# ------------
#    0         successful
#    Others failur
#
# ----------------------------------------------------------------------
# These are Parameters from external
#
# 1: Subject
# 2: Alert Info File


Usage="$0 Subject AlertInfo."


if [ $# -ne 2 ]; then
         echo "$Usage"
         exit -1
fi


. /etc/profile


Subject="$1"
AlertInfo="$2"
ProgDir=`dirname $0`




. $ProgDir/email/EmailNotify.cfg


. $ProgDir/im/qq/QqNofiy.cfg


# .$ProgDir/sms/SmsNofiy.cfg




#####
# Email
#####


                                                               第 35 页                  6/3/2006
                                                                            Nagios 配置学习手记-续-完整版




if [ "$Email_Notify" = "Enable" ]; then
       if [ -z "$MtaAddr" ]; then
              MtaAddr=mail.163.com
       fi


       if [ -z "$SrcMailAddr" ]; then
              SrcMailAddr=chnl@163.com
       fi


       if [ -z "$DestMailAddrFile" ]; then
              DestMailAddrFile=$ProgDir/email/dest.addr
       fi


       if [ -z $SendTimes ]; then
              SendTimes=1
       fi
       cd $ProgDir/email


       EAlertInfoFile=/home/cl/nagios/dist/libexec/email/log/TempFile.eml
       /usr/bin/printf "%b" "$AlertInfo" > $EAlertInfoFile


       if [ -z $Pass ]; then
              /usr/java/bin/java -jar EmailSend.jar "$MtaAddr" "$SrcMailAddr" "$DestMailAddrFile" "$Subject"
"$EAlertInfoFile" "$SendTimes"
       else
              /usr/java/bin/java -jar EmailSend.jar "$MtaAddr" "$SrcMailAddr" "$DestMailAddrFile" "$Subject"
"$EAlertInfoFile" "$SendTimes" "$Pass"
       fi
       cd -


       echo `date` >> $ProgDir/email/log/OutFile.eml
       cat $EAlertInfoFile >>$ProgDir/email/log/OutFile.eml
       echo `#################################`>>$ProgDir/email/log/OutFile.eml


fi


#####
# IM
#####
if [ "$Im_Nofity" = "Enable" ]; then
       cd $ProgDir/im/qq



                                                     第 36 页                                     6/3/2006
                                                                             Nagios 配置学习手记-续-完整版



     IAlertInfoFile=/home/cl/nagios/dist/libexec/im/qq/log/TempFile.msg
     /usr/bin/printf "%b" "$AlertInfo" |grep -v ^$ > $IAlertInfoFile




     Msg=""
     while read Record
     do
     Msg="$Msg $Record"
     done < $IAlertInfoFile


     while read QQ
     do
            ./qq.exp $QQ "$Subject" "$Msg" > /home/cl/nagios/dist/libexec/im/qq/log/qq.out
     done < ./dest.qq


     cd -
     echo `date` >> $ProgDir/im/qq/log/OutFile.msg
     echo $Msg >>$ProgDir/im/qq/log/OutFile.msg
     echo `#################################`>>$ProgDir/im/qq/log/OutFile.msg


fi
#####
# Sms
#####



2、简单说明


     脚本的第一部分,对传递参数作了判断,并初始化了系统环境;

第二部分是 Email 通知部分,执行 EmailSend.jar 文件来实现;第三

部分是 QQ 通知部分使用了一个 while 循环语句来读取 dest.qq 中的

记录(此处有待改善,需要把判断每行记录是否为 QQ 号码形式),

并调用 qq.exp 来发送。




                                                    第 37 页                                   6/3/2006
                                         Nagios 配置学习手记-续-完整版




五、启动


1、Nrpe


    Nrpe 可以用使用以下的命令来启动:

nrpe -c NrpeConfigFile -d 或

/etc/init.d/nrpe start 来启动。


2、Nagios


    Nagios 在启动之前,可以使用命令 nagios -v NagiosConfigFile 来

检验配置文件,如果无误,则可以使用以下的命令启动:

nagios -d NagiosConfigFile

或

/etc/init.d/nagios start

    并使用以下的命令来追踪日志文件:

tail -f NagiosHome/var /nagios.log

    出现的错误,大多都和不正确的配置有关,查一下官方文档,一

般都可以解决。


3、Httpd(Apache)


    Nagios 需要 httpd 支持,因此需要启动 httpd。Http 的启动可以使

用以下的命令:

                                第 38 页               6/3/2006
                                      Nagios 配置学习手记-续-完整版




/etc/init.d/httpd start



六、使用及测试


1、登陆


    打开浏览器之后,输入主机的 Nagios 主机 ip 加上 nagios 的路径

即 可 , 如 果 你 的 Nagios 主 机 ip 是 192.168.200.172 , 那 么 输 入

http://192.168.200.172/nagios 就可以了。

如下图所示:

只要输入正确的用户名/密码,即可登陆。




                           第 39 页                 6/3/2006
                       Nagios 配置学习手记-续-完整版




2、功能截图


以下是一些页面的截图:




              第 40 页               6/3/2006
         Nagios 配置学习手记-续-完整版




第 41 页               6/3/2006
         Nagios 配置学习手记-续-完整版




第 42 页               6/3/2006
                                    Nagios 配置学习手记-续-完整版




3、测试


    可以通过修改一些主机的 IP 地址或修改 Warning 及 Critical 的阀

值等形式,让 Nagios 产生 Alert 及 Notification ,来验证 Nagios 的展

示及告警通知等功能。




附录:


文档列表:


    以上文中所列出的配置文件及脚本,皆在我的系统的真实环境测

试通过,可以经过简单修改后使用。但在此生命,并不保证在所有的

环境下皆能正常运行。


Nagios 部分:

nagios.cfg
minimal.cfg
resource.cfg
cgi.cfg
commands.cfg
hosts.cfg
services.cfg




                       第 43 页                   6/3/2006
                           Nagios 配置学习手记-续-完整版




Httpd 部分:

nagios.confg
.htaccess
htpasswd.users




Nrpe 部分:

nrpe.cfg




Notify 部分:

EmailSend.jar
EmailNotify.cfg
dest.addr

TextQQ
QqNotify.cfg
dest.qq
qq.sh
qq.exp

alert_sender.sh




                  第 44 页               6/3/2006

								
To top
;