nagios监控Linux服务器的过程如下所述:
客户端配置:
建用户:
useradd nagios (可以在 /etc/password 里修改此帐户的shell为 /sbin/nologin)
passwd nagios
安装插件:
- tar zxvf nagios-plugins-1.4.11.tar.gz
- cd nagios-plugins-1.4.11
- ./configure--prefix=/usr/local/nagios --enable-redhat-pthread-workaround
- make all
- make install
修改权限:
chown nagios:nagios /usr/local/nagios –R
安装Nrpe服务:
- tar zxvf nrpe-2.8.1.tar.gz
- cd nrpe-2.8.1
- ./configure –prefix=/usr/local/nagios [./configure --enable-ssl --enable-command-args]
- make all (编译)
- make install-plugin (安装插件)
- make install-daemon (安装 nrpe daemon)
- make install-daemon-config (安装配置文件)
- make install-xinetd (安装xinetd 脚本文件)
添加服务器IP:
vi /etc/xinetd.d/nrpe
only_from = 127.0.0.1 192.168.0.108
添加 nrpe 服务:
vi /etc/services
Nrpe 5666/tcp # nrpe
重新启动Xinetd服务:
service xinetd restart
查看Nrpe服务是否开启:
netstat -ant|grep 5666
测试Nrpe是否能正常工作:
/usr/local/nagios/libexec/check_nrpe -H localhost
NRPE v2.8.1 (这表示在本地用check_nrpe连接nrpe daemon是正常的)
服务端配置:
A 拷贝 localhost.cfg 模板文件,对192.168.112.101进行监控:
cp /usr/local/nagios/etc/localhost.cfg /usr/local/nagios/etc/192.168.112.101.cfg
vi 192.168.112.101.cfg
修改配置(主机名、IP、别名)
B 将192.168.112.101.cfg 加入nagios 主配置文件:
vi /usr/local/nagios/etc/nagios.cfg
cfg_file=/usr/local/nagios/etc/objects/192.168.112.101.cfg
C 验证配置文件是否正确,并重启:
/usr/local/nagios/bin/nagios –v /usr/local/nagios/etc/object/nagios.cfg
Service nagios restart (重启nagios 使配置生效)
D 查看naigios监控页面,发现主机已经被正常添加。
服务端增加监控服务(非必须):
在Command.cfg文件中增加check_nrpe的功能:
- vi /usr/local/nagios/etc/commands.cfg
- define command{
- command_name check_nrpe
- command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
- }
注意:-c后面带的$ARG1$参数是传给nrpe daemon执行的检测命令,在services.cfg中使用check_nrpe的时候要用!带上这个参数。
额外知识点:
vi /usr/local/nagios/etc/nrpe.cfg
找到以下这段内容:
- # The following examples use hardcoded command arguments...
- command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10
- command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
- command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/hda1
- command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z
- command[check_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200
[] 中是命令名,也就是check_nrpe 的-c参数可以接的内容,=后面是实际执行的插件程序commands.cfg中定义命令的形式十分相似,只不过是写在了一行.也就是说check_users就是等号后面/usr/local/nagios/libexec/check_users -w 5 -c 10的简称.
我们可以很容易知道上面这5行定义的命令分别是检测登陆用户数,cpu负载,hda1的容量,僵尸进程,总进程数.用法: ./check_load --help,由于-c后面只能接nrpe.cfg中定义的命令,也就是说现在我们只能用上面定义的这五条命令。
nagios的其他配置请读者阅读:
安装配置nagios、修改Apache配置、Nagios 3.0初步安装配置、监控Windows服务器和十个Nagios故障解决技巧