一,nagios简介,(略,请参考相关文档)

二.  快速安装(此部分参考nagios官方文档)

1)      环境准备,需安装apache,GCC编译库,GD库与开发工具,可以用yum安装,命令:

yum   install  httpd

yum   install  gcc

yum   install  glibc   glibc-common  gd  gd-devel

2)  创建一个名为nagios的账号并给定登录密码。

useradd  nagios

passwd nagios

创建一个nagcmd用户组用于从web接口执行外部命令。将nagios用户和apache用户都加到这个组中。

/usr/sbin/groupadd nagcmd
/usr/sbin/usermod -G nagcmd nagios
/usr/sbin/usermod -G nagcmd apache

3)获取nagios和插件的安装包,编译并安装

 

mkdir ~/downloads
cd ~/downloads
wget http://osdn.dl.sourceforge.net/sourceforge/nagios/nagios-3.2.1.tar.gz
wget http://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.11.tar

编译安装nagios

tar xzf nagios-3.2.1.tar.gz
cd nagios-3.2.1

运行Nagios配置脚本并使用先前开设的用户及用户组:
./configure --with-command-group=nagcmd
make all
make install
make install-init
make install-config
make install-commandmode

4)客户化配置

样例配置文件默认安装在这个目录下/usr/local/nagios/etc,这些样例文件可以配置Nagios使之正常运行,只需要做一个简单的修改...

用你擅长的编辑器软件来编辑这个/usr/local/nagios/etc/objects/contacts.cfg配置文件,更改email地址nagiosadmin的联系人定义信息中的EMail信息为你的EMail信息以接收报警内容。

vi /usr/local/nagios/etc/objects/contacts.cfg

5)配置WEB接口

安装Nagios的WEB配置文件到Apache的conf.d目录下

make install-webconf

创建一个nagiosadmin的用户用于Nagios的WEB接口登录。记下你所设置的登录口令,一会儿你会用到它。

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

重启Apache服务以使设置生效。

service httpd restart

6)编译并安装Nagios插件

展开Nagios插件的源程序包

cd ~/downloads tar xzf nagios-plugins-1.4.11.tar.gz cd nagios-plugins-1.4.11

编译并安装插件

./configure --with-nagios-user=nagios --with-nagios-group=nagios make make install

7)启动Nagios

把Nagios加入到服务列表中以使之在系统启动时自动启动

chkconfig --add nagios chkconfig nagios on

验证Nagios的样例配置文件

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

如果没有报错,可以启动Nagios服务

service nagios start

8)更改SELinux设置

Fedora与SELinux(安全增强型Linux)同步发行与安装后将默认使用强制模式。这会在你尝试联入Nagios的CGI时导致一个"内部服务错误"消息。

如果是SELinux处于强制安全模式时需要做

getenforce

令SELinux处于容许模式

setenforce 0

如果要永久性更变它,需要更改/etc/selinux/config里的设置并重启系统。

不关闭SELinux或是永久性变更它的方法是让CGI模块在SELinux下指定强制目标模式:

chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/ chcon -R -t httpd_sys_content_t /usr/local/nagios/share/

更多有关Nagios的CGI模块增加目标策略的强制权限方式见NagiosCommunity.org的维基百科http://www.nagioscommunity.org/wiki

9)登录WEB接口

你现在可以从WEB方式来接入Nagios的WEB接口了,你需要在提示下输入你的用户名(nagiosadmin)和口令,你刚刚设置的,这里用系统默认安装的浏览器,用下面这个超链接

http://localhost/nagios/

到此nagios主程序是安装完了。但是必须安装nrpe扩展才能监控远程主机,下面就在监控主机上安装nrpe

三.   安装nrpe扩展

首先下载Nrpe软件,下载网址为:
http://sourceforge.net/project/showfiles.php?group_id=26589
目前最新版本为:nrpe-2.12
1、解压安装包

tar xzf nrpe-2.8.1.tar.gz
2、安装Nrpe

cd nrpe-2.8.1

./configure

make all

make install-plugin    # 监控端安装到这一步就可以了,不过装完也没关系。

make install-daemon

make install-daemon-config
make install-xinetd

3、添加Nrpe的端口号
vi /etc/services
添加这个
nrpe            5666/tcp        # NRPE

4、修改nrpe启动脚本
修改/etc/xinetd.d/nrpe脚本文件,将
allowed_hosts=127.0.0.1
这一行注释掉,或者改为你安装Nagios的主机地址。

5、启动nrpe
service xinetd restart

6、使用Nrpe
在本机上运行:
check_nrpe -H 127.0.0.1
出现如下信息:
NRPE 2.12
则说明Nrpe已经运行成功了。

被监控的机器上也要安装nrpe,安装nrpe之前要先增加用户和安装plugin,具体步骤如下:

被监控机添加用户

   1. groupadd nagios
   2. useradd -g nagios -d /usr/local/nagios -s /sbin/nologin nagios

被监控机安装plugin

   1. wget http://nchc.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.13.tar.gz
   2. tar zxf nagios-plugins-1.4.13.tar.gz
   3. cd nagios-plugins-1.4.13

   4    ./configure --with-nagios-user=nagios --with-nagios-group=nagios

   5. make
   6. make install

被监控机安装NRPE

   1. wget http://nchc.dl.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz
   2. tar zxvf nrpe-2.12.tar.gz
   3. cd nrpe-2.12
   4. ./configure --prefix=/usr/local/nagios
   5. make all
   6. make install-plugin
   7. make install-daemon
   8. make install-daemon-config
   9. chown -R nagios:nagios /usr/local/nagios

四.    配置nrpe

vim  /etc/services

增加如下一行:nrpe            5666/tcp                        #nrpe   

开启nrpe端口

 vim /etc/xinetd.d/nrpe

在only_from       = 127.0.0.1 增加监控机的IP地址,如

only_from       = 127.0.0.1 172.16.0.138

(监控端和被监控端nrpe都要这么配置下)

然后重启nrpe,命令service  xinetd restart

启动apache,重启nagios,

service httpd start

service  nagios  restart

这样在浏览器输入http://172.16.0.138/nagios就可以看到nagios的监控页面了

 

 

五    实现监控远程主机

1)在/usr/local/nagios/etc/objects目录中创建一个要监控的远程主机配置文件,在此文件中定义被监控的主机,服务:如vim   ffcaps05.cfg,并把这个文件加入到主配置文件/usr/local/nagios/etc/nagios.cfg中,即在此文件中加入如下一行内容:cfg_file=/usr/local/nagios/etc/objects/ffcaps05.cfg      .  ffcaps05.cfg的配置内容如图:

 

2)在commands.cfg文件中加入如下红色部分。

 

 

根据需要加入要监控的内容。如要监控/dev/sda1,则监控端配置ffcaps05.cfg中加入如下service

define service{
        use                             generic-service
        host_name                       ffcaps05
        service_description             check_sda1
        check_command                   check_nrpe!check_sda1
        }

在被监控端需做如下修改:nrpe配置文件,添加划线的行内容。