Nagios监控

                               孤独0-1 >

目录

一、软件版本1

1.1、主程序nagios-3.2.3.tar.gz1

1.2、插件 nagios-plugins-1.4.15.tar.gz1

1.3、插件 nrpe-2.12.tar.gz1

1.4、飞信报警库及脚本 lib/ fetion1

二、Nagios监控服务器端/8.230,程序安装1

2.1Yum安装以下软件1

2.2、创建nagios 用户和组1

2.3、编译安装Nagios 主程序1

2.4、安装nagios-plugins插件2

2.5、将apache的运行用户加到nagios组里面2

2.6、增加web访问账号2

2.7、查看cgi.cfg文件2

2.8、编译安装nrpe插件2

2.9nagios随系统启动3

三、Nagios 被监控客户端/8.2313

3.1、增加用户nagios3

3.2、编译安装nagios-plugins插件3

3.3、编译安装nrpe插件3

3.4、修改services配置文件,在最后末尾增加4

3.5、修改nrpe配置文件4

3.6、启动基于xinetd nrpe服务4

3.7、测试回到8.230主监控服务器上4

四、Nagios监控服务器端/8.230 主程序配置4

4.1、配置文件分组简介4

4.2在定义配置文件路经,这里可以自定义配置文件.5

4.3、定义配置lxr 联系人新增配置文件5

4.4、定义配置lxrgroup联系组-新增配置文件5

4.5、定义配置host主机文件,新增配置文件6

4.6、定义配置hostgroup主机组文件,新增配置文件6

4.7、定义配置serivcegroup服务组文件,新增配置文件6

4.8、定义配置serivce服务文件,以上面所有的主机和组。在此配置文件调用。6

4.9、定义飞信短信报警机器人7

5.0、定义飞信短信报警代码,在末行增加7

五、常用测试命令7

5.1、定义被监控端的命令比如swap7

5.2、监控服务端nrpe测试,swap命令8


一、 软件版本

1.1、主程序nagios-3.2.3.tar.gz

下载地址:http://sourceforge.net/projects/nagios/files/nagios-3.x/nagios-3.2.3/nagios-3.2.3.tar.gz/download

1.2、插件 nagios-plugins-1.4.15.tar.gz

http://sourceforge.net/projects/nagiosplug/files/nagiosplug/1.4.15/nagios-plugins-1.4.15.tar.gz/download

1.3、插件 nrpe-2.12.tar.gz

下载地址:http://down.51cto.com/data/165101#

1.4、飞信报警库及脚本 lib/ fetion

下载地址:http://bbs.it-adv.net/viewthread.php?tid=1081&extra=page%3D1


二、 Nagios监控服务器端/8.230,程序安装

2.1Yum安装以下软件

[root@test-1 /]# yum  -y install httpd gcc glibc glibc-common gd gd-devel php openssl-develxinetd


2.2、创建nagios 用户和组

[root@test-1 nagios]# useradd nagios

[root@test-1 nagios]# passwd nagios

[root@test-1 nagios]# mkdir/usr/local/nagios

[root@test-1 nagios]# chown nagios.nagios /usr/local/nagios

2.3、编译安装Nagios 主程序

[root@test-1 nagios]# tar -xvf nagios-3.2.3.tar.gz

[root@test-1 nagios]# cd nagios-3.2.3

[root@test-1 nagios]#./configure --prefix=/usr/local/nagios --with-command-group=nagios

[root@test-1 nagios]#make all

[root@test-1 nagios]#make install

[root@test-1 nagios]# make install-init


[root@test-1 nagios]# make install-config

[root@test-1 nagios]# make install-commandmode

[root@test-1 nagios]#make install-webconf

(查看是否有/usr/local/nagios/etc、bin、sbin、share、var、libexec这六个目录,如果有,表示安装成功)

2.4、安装nagios-plugins插件

[root@test-1 nagios]#tar -xvf nagios-plugins-1.4.15.tar.gz

[root@test-1 nagios]#cd nagios-plugins-1.4.15

./configure--prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios

[root@test-1 nagios]#make && make install

ls /usr/local/nagios/libexec(会显示很多应用脚本)

2.5apache的运行用户加到nagios组里面

[root@test-1 nagios]#usermod -G nagios apache

2.6、增加web访问账号

[root@test-1 nagios]#cat /etc/httpd/conf.d/nagios.conf | grep  htpasswd

AuthUserFile /usr/local/nagios/etc/htpasswd.users

  AuthUserFile /usr/local/nagios/etc/htpasswd.users

[root@test-1]#htpasswd -c  /usr/local/nagios/etc/htpasswd.users nagiosadmin

2.7、查看cgi.cfg文件

[root@test-1 nagios]# grep nagiosadmin /usr/local/nagios/etc/cgi.cfg

authorized_for_system_information=nagiosadmin

authorized_for_configuration_information=nagiosadmin

authorized_for_system_commands=nagiosadmin

authorized_for_all_services=nagiosadmin

authorized_for_all_hosts=nagiosadmin

authorized_for_all_service_commands=nagiosadmin

authorized_for_all_host_commands=nagiosadmin

2.8、编译安装nrpe插件

[root@test-1 nagios]#tar -xvf nrpe-2.12.tar.gz

[root@test-1 nagios]#cd nrpe-2.12

[root@test-1 nagios]# ./configure --enable-ssl --with-ssl-lib

[root@test-1 nagios]#make all

[root@test-1 nagios]# make install-plugin

[root@test-1 nagios]# make install-daemon

[root@test-1 nagios]# make install-daemon-config

[root@test-1 nagios]#make install-xinetd

2.9nagios随系统启动

[root@test-1 nagios]#chkconfig --add nagios

[root@test-1 nagios]#chkconfig nagios on

[root@test-1 nagios]#/etc/init.d/httpd start

验证配置是否配置正确:/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

如果不报错,可以启动nagios服务:service nagios start

IE浏览器地址栏输入:192.168.8.230/nagios,敲入用户名及密码,就可以看到如下界面了


三、 Nagios 被监控客户端/8.231

3.1、增加用户nagios

[root@test-2 /]# yum  -y install httpd gcc glibc glibc-common gd gd-devel php openssl-develxinetd


[root@test-2 nagios]# useradd nagios

[root@test-2 nagios]# passwd nagios


3.2、编译安装nagios-plugins插件

[root@test-1 nagios]#tar -xvf nagios-plugins-1.4.15.tar.gz

[root@test-1 nagios]#cd nagios-plugins-1.4.15

./configure--prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-group=nagios

[root@test-1 nagios]#make && make install

ls /usr/local/nagios/libexec(会显示很多应用脚本)


3.3、编译安装nrpe插件

[root@test-2 nagios]#tar -xvf nrpe-2.12.tar.gz

[root@test-2 nagios]#cd nrpe-2.12

[root@test-2 nagios]# ./configure --enable-ssl --with-ssl-lib

[root@test-2 nagios]#make all

[root@test-2 nagios]# make install-plugin

[root@test-2 nagios]# make install-daemon

[root@test-2 nagios]# make install-daemon-config

[root@test-2 nagios]#make install-xinetd

3.4、修改services配置文件,在最后末尾增加

[root@test-2 nagios]#cat /etc/services | grep nrpe

nrpe            5666/tcp                        # nrpe


3.5、修改nrpe配置文件

[root@test-2 nagios]#vim /etc/xinetd.d/nrpe

only_from       = 192.168.8.230à监控服务器地址

3.6、启动基于xinetd nrpe服务

[root@test-2 nagios]#/etc/init.d/xinetd start

[root@test-2 nagios]#netstat -nap | grep 5666

tcp        0      0 0.0.0.0:5666                0.0.0.0:*                   LISTEN      1284/xinetd

3.7、测试回到8.230主监控服务器上

[root@test-1 nagios]# /usr/local/nagios/libexec/check_nrpe -H 192.168.8.231

返回 “NRPE v2.12” 表示部署成功

四、 Nagios监控服务器端/8.230 主程序配置

4.1、配置文件分组简介

cgi.cfg---à控制相关的cgi 脚本

resoure.cfg -à系统传入参数配置文件

commands.cfg-à定义命令配置文件

timeperiods.cfgà监视时段配置文件


配置分组自定义

contacts .cfg-à 定义了故障报警的联系人

contactsgroup.cfg---à定义了故障报警联系组


hosts--à主机配置文件

hostgroups-à主机组配置文件


services-à服务配置文件

servicesgroupà服务组配置文件




4.2、 在定义配置文件路经,这里可以自定义配置文件.

[root@test-1 nagios]#vim /usr/local/nagios/etc/nagios.cfg


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

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

末尾增加以下内容

cfg_file=/usr/local/nagios/my/lxr

cfg_file=/usr/local/nagios/my/lxrgroup

cfg_file=/usr/local/nagios/my/host

cfg_file=/usr/local/nagios/my/hostgroup

cfg_file=/usr/local/nagios/my/serivcegroup

cfg_file=/usr/local/nagios/my/service


4.3、定义配置lxr 联系人新增配置文件

[root@test-1 nagios]# mkdir /usr/local/nagios/my

[root@test-1 nagios]# cd /usr/local/nagios/my

[root@test-1my]# vim lxr

define contact{

               contact_name       Alvin-zeng

               use                generic-contact

               alias              Alvin-zeng-admin

               service_notification_commands    notify-service-by-email,service-notify-by-fetion

               host_notification_commands        notify-host-by-email,host-notify-by-fetion

               email                           [email protected]

               pager                           136xxxxxxx  }





4.4、定义配置lxrgroup联系组-新增配置文件

[root@test-1my]# vim lxrgroup

define contactgroup{

              contactgroup_name             lxrgp    #:组名随便定义

              alias                          zeng    #:别名随便定义

           members                        Alvin-zeng     #这里将上面的联系人成员。加到这个组里面

 }





4.5、定义配置host主机文件,新增配置文件

[root@test-1my]# vim host

define host{

         host_name                        test-2   #被监空端真实的主机名,主要不要留空格。

         alias                              test

         max_check_attempts                 5

         address                            192.168.8.231 }  #:被监客户端IP地址

4.6、定义配置hostgroup主机组文件,新增配置文件

[root@test-1my]# vim hostgroup

define hostgroup{

         hostgroup_name        group1   #:组名

         alias                   group

         members              test-2    #:test-2 加到这个组里面来

}

4.7、定义配置serivcegroup服务组文件,新增配置文件

[root@test-1my]# vim serivcegroup

define servicegroup{

       servicegroup_name    tt    #:组名

       alias                TT    #:别名

}

4.8、定义配置serivce服务文件,以上面所有的主机和组。在此配置文件调用。

[root@test-1my]# vim service

define service{

             hostgroup_name           group1    #这里调用主机组或者单个主机

             servicegroups               tt        #这里调用服务组或者单个服务

             service_description           check_swap #检查swap

             check_period                24x7      #检查24小时

             max_check_attempts          1

             normal_check_interval         1

             retry_check_interval           1

             notification_options           w,u,c,r

             notification_interval           1

             notification_period            24x7

             check_command              check_nrpe!check_swap

             contact_groups                lxrgp #这里调用联系人组或者单个联系人

}

4.9、定义飞信短信报警机器人

先解压,解压完后。找到lib 目录库和fetion脚本

[root@test-1my]#mkdir /usr/local/fetion/

[root@test-1my]#mkdir /usr/local/fetion/

[root@test-1my]# cp lib/  /usr/local/fetion/

[root@test-1my]# cp fetion  /usr/local/fetion/


5.0、定义飞信短信报警代码,在末行增加

[root@test-1my]#vim /usr/local/nagios/etc/objects/commands.cfg


define command {

            command_name            host-notify-by-fetion ;

            command_line  LD_LIBRARY_PATH=/usr/local/fetion/lib /usr/local/fetion/fetion --mobile=13692216****  --pwd=feishu8 --to=13692216****  --msg-utf8="Host $HOSTSTATE$ alert for $HOSTNAME$! on '$LONGDATETIME$'" $CONTACTPAGER$

            }


# 'notify-service-by-fetion' command definition

define command {

            command_name         service-notify-by-fetion

            command_line         LD_LIBRARY_PATH=/usr/local/fetion/lib /usr/local/fetion/fetion --mobile=13692216****  --pwd=feishu8 --to=13692216****  --msg-utf8="$HOSTADDRESS$ $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ on $LONGDATETIME$" $CONTACTPAGER$

               }

# ' check_nrpe ' command definition

define command{

       command_name check_nrpe

       command_line /usr/local/nagios/libexec/check_nrpe -H $HOSTADDRESS$ -c $ARG1$

}

五、 常用测试命令

5.1、定义被 监控端的命令比如swap

[root@test-2 nagios]#vim /usr/local/nagios/etc/nrpe.cfg
command[check_swap]=/usr/local/nagios/libexec/check_swap -w 50% -c 20%

5.2、监控服务端nrpe测试,swap命令

[root@test-1 nagios]#cd /usr/local/nagios/libexec/

[root@test-1 libexec]#./check_nrpe -H 192.168.8.231 -c check_swap

SWAP OK - 100% free (1983 MB out of 1983 MB) |swap=1983MB;991;396;0;1983