天天看点

nagios监控私有服务过程

之前给讲过了nagios的安装配置,以及如何监控公共服务,现在在继续讲解如何监控私有服务,什么是私有服务呢,说直白点就是机器的disk,load,users,usage等,就是现实机器本身状态的这些服务,称作私有服务。

准备工作:需要子啊服务端和被监控端安装nrpe。

一、服务端配置

1) wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz

tar -xf nrpe-2.12.tar.gz -C /usr/src

cd /usr/src/nrpe-2.12

./configure --这一步没有出现error才能继续下面的步骤,如果出错自行百度。

make && make install

安装完之后就会出现下面的脚本

/usr/local/nagios/libexec/check_nrpe

2)增加check_nrpe命令道commands.cfg模板

# vim /usr/local/nagios/etc/objects/commands.cfg

define command{

command_name check_nrpe

command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$ --c参数后接command, 也就说check_nrpe可以调用别的check命令

}

3)在nagios服务器上对125的配置文件增加远程私有服务 --只取一个作为范例。

# vim 125.cfg

define service{

use local-service

host_name 192.168.1.125

service_description Root Partition

check_command check_nrpe!check_remote_root

--check_remote_root就是check_nrpe的C参数要调用的命令,此命令在nagios服务器上的commands.cfg里是不存在,它会在后面的步骤中加到被监控端

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

--检查一下配置文件正确性,OK的话则配置端配置完毕,先不reload nagios服务,等被监控端配置完后再reload

二、客户端配置

1,新建用户

# useradd nagios

# groupadd nagiosgroup

# usermod -G nagiosgroup nagios

2,安装plugins插件,包含了数据采集命令脚本

# tar xf nagios-plugins-1.4.16.tar.gz -C /usr/src/

# cd /usr/src/nagios-plugins-1.4.16/

# ./configure --with-nagios-user=nagios --with-nagios-group=nagiosgroup

# make && make install

3,安装nrpe

# tar xf nrpe-2.12.tar.gz -C /usr/src/

# cd /usr/src/nrpe-2.12/

# ./configure && make && make install

# make install-plugin

# make install-daemon

# make install-daemon-config

# make install-xinetd

4,修改nrpe的超级守护进程的配置文件 --如果没有目录,没有需要安装xinetd

# vim /etc/xinetd.d/nrpe

service nrpe

{

flags = REUSE

socket_type = stream

port = 5666

wait = no

user = nagios

group = nagios

server = /usr/local/nagios/bin/nrpe

server_args = -c /usr/local/nagios/etc/nrpe.cfg --inetd

log_on_failure += USERID

disable = no

only_from = 127.0.0.1 192.168.1.124--加上nagios服务器的IP,允许它来访问

# vim /etc/services--最后面加一行

nrpe 5666/tcp # NRPE

5,在nrpe配置文件里定义check命令,使nagios服务能调用

# vim /usr/local/nagios/etc/nrpe.cfg

command[check_remote_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10

command[check_remote_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20

command[check_remote_root]=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda2 --/dev/sda2是被监控端的根分区,也可以直接就写一个 / 就可以了

command[check_remote_total_procs]=/usr/local/nagios/libexec/check_procs -w 150 -c 200

command[check_remote_swap]=/usr/local/nagios/libexec/check_swap -w 80%% -c 60%% --这句默认没有的,但nagios服务器有配置,所以加上这句

command[check_zombie_procs]=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z--这个是默认有的,但nagios服务器那边我没有加,所以这个在这里没有用

# /etc/init.d/xinetd restart--启动超级守护进程

# netstat -ntlup |grep 5666--有端口被监听了

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

6,在本地或nagios服务器测试 --在被监控端测试成功

# /usr/local/nagios/libexec/check_users -w 5 -c 10

USERS OK - 3 users currently logged in |users=3;5;10;0

--在nagios服务器上测试成功

# /usr/local/nagios/libexec/check_nrpe -H 192.198.1.125 -c check_remote_users

至此客户端的安装配置完毕。

7,回到nagios服务器重启服务

# /etc/init.d/nagios restar

每个人的机器都有所不同,我这边的只是用作参考,不对之处还请各位看官指正。