NRPE是nagios的一个扩展,它被用于被监控的服务器上,向nagios监控平台提供该服务器的一些本地的情况。例如,cpu负载、内存使用、硬盘使用等等。NRPE可以称为nagios的for linux 客户端。
为什么要使用这个客户端呢?在nagios的插件中,有一个名为“check_ssh”的插件,它也可以实现对于远程服务器中local信息的监控。但 是,相对NRPE,“check_ssh”占用的系统资源就略多了一点。监控少量的服务时可能不会察觉,但是如果监控对象比较多,那么差距就非常明显了。 但是还有一点要说明,虽然NRPE也是使用SSL安全通道,但是“check_ssh”的安全性要高于NRPE,安全性总是和易用性成反比的。 -_-||
首先,需要在nagios监控平台服务器上安装NRPE,安装很简单,到官方网站下载最新的nrpe包,本例中使用的是nrpe-2.8.1.tar.gz。
cd nrpe-2.8.1
./configure
make all
make install-plugin
之后需要定义一个可以在监控平台使用的命令,这个定义一般会在/.../nagios/etc/commands.cfg中,其内容如下:
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ }
host_name remotehost
service_description CPU Load
...
check_command check_nrpe!check_load }
ok,现在来说本文的重点内容,如何在被监控服务器上安装NRPE。
首先,需要准备的包有两个:NRPE和nagios-plugin。本文使用的版本是nagios-plugins-1.4.9.tar.gz和nrpe-2.8.1.tar.gz。首先安装插件:
passwd nagios
tar xzf nagios-plugins-1.4.9.tar.gz
cd nagios-plugins-1.4.9
./configure --prefix=/usr/local/nagios
make && make install
chown nagios.nagios /usr/local/nagios/
chown -R nagios.nagios /usr/local/nagios/libexec/
cd nrpe-2.8.1
./configure
make all
make install-plugin
make install-daemon
make install-daemon-config
首先,需要修改/usr/local/nagios/etc/nrpe.cof。
找到“allowed_hosts=127.0.0.1”将其改为:
启动NRPE守护进程:(可以将此命令加入/etc/rc.local,以便开机自动启动)
NRPE v2.8.1
如果看到这些,恭喜你,你的NRPE安装成功了。
那么,通过NRPE,可以监控到哪些信息呢? 只要在被监控服务器上有的插件(/usr/local/nagios/libexec中的所有插件),都可以使用。也就是说,你想监控什么,只要有对应的插件,就可以实现。
例如,我希望监控一台远程服务器上的cpu负载。在远程主机的插件中有“check_load”,那么,在nrpe.conf中定义一个cpu负载的监控: