Kaldenhoven Wiki
NRPE moet je gebruiken om Linux Hosts te monitoren.
NRPE eenmalig installeren op de Nagios Host en per te monitoren host ook op deze machines installeren.
nagios_nrpe.jpg

Downloaden van componenten

Check voor de actuele versies de nagios sites.

Remote Host configuratie

Alle volgende commando's moeten op de te monitoren host worden uitgevoerd.

Nagios Account aanmaken

useradd nagios
passwd nagios

Nagios Plugins installeren

cd /home/downloads
tar xvfz nagios-plugins-1.4.16.tar.gz
cd nagios-plugins-1.4.16
export LDFLAGS=-ldl

De enable-redhat optie mag worden weggelaten voor systemen anders dan redhat

./configure --with-nagios-user=nagios --with-nagios-group=nagios --enable-redhat-pthread-workaround
make
make install
chown nagios.nagios /usr/local/nagios
chown -R nagios.nagios /usr/local/nagios/libexec/

Installeer NRPE

tar xvfz nrpe-2.14.tar.gz
cd nrpe-2.14
./configure
make all
make install-plugin
make install-daemon
make install-daemon-config
make install-xinetd

Het kan zijn dat het ./configure commando niet lukt met de volgende melding

checking for SSL headers... configure: error: Cannot find ssl headers

Installeer in dat geval de compileer tools. (en SSL libraries) Voor Ubuntu:

apt-get install build-essential
apt-get install libssl-dev
./configure --with-ssl=/usr/bin/openssl --with-ssl-lib=/usr/lib/x86_64-linux-gnu

Voor CentOS:

yum groupinstall "Development Tools"

Om ook de mysql-plugin te verkrijgen moeten de development libraries van de mysql client worden geïnstalleerd.

apt-get install libmysqlclient15-dev

of in geval van MariaDB

apt-get install libmariadbclient-dev

Voer hierna nogmaals de stappen uit vanaf ./configure

NRPE instellen als daemon

Bewerk /etc/xinetd.d/nrpe

nano /etc/xinetd.d/nrpe

en pas de regel aan naar onderstaand voorbeeld. IP-adres wijzigen naar Nagios server.

only_from       = 127.0.0.1 192.168.1.2

Bewerk /etc/services

nano /etc/services

en voeg de volgende regel toe

nrpe            5666/tcp                        # NRPE for Nagios

XinetD herstarten

service xinetd restart

Controleren of de service draait

netstat -at | grep nrpe

geeft

tcp        0      0 *:nrpe                  *:*                     LISTEN

NRPE controleren

/usr/local/nagios/libexec/check_nrpe -H localhost

geeft

NRPE v2.14

NRPE configuratie

Pas indien nodig de voorgedefinieerde opdrachten aan zodat ze aansluiten op jouw wensen.
Bewerk hiervoor /usr/local/nagios/etc/nrpe.cfg en pas aan of voeg toe. De regels zien er als volgt uit.

nano /usr/local/nagios/etc/nrpe.cfg
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

Nagios Host configuratie

De installatie van NRPE is eenmalig. Configuratie voor verschillende te monitoren hosts is natuurlijk iedere keer nodig dat er een host bijkomt.

Installatie NRPE

tar xvfz nrpe-2.14.tar.gz
cd nrpe-2.14
./configure
make all
make install-plugin

./configure geeft output als onderstaand:

*** Configuration summary for nrpe 2.14 12-21-2012 ***:

General Options:
————————-
NRPE port: 5666
NRPE user: nagios
NRPE group: nagios
Nagios user: nagios
Nagios group: nagios

Als je bij het compileren een foutmelding krijgt over SSL headers installeer deze dan.
Voor ubuntu gaat dit middels:

apt-get install libssl-dev

Voor CentOS gaat dit middels:

yum install libssl-dev

Voor SUSE Enterprise Linux 11 SP1 is het wat lastiger. Hier moet het losse pakket worden geïnstalleerd vanaf de SDK DVD1

libopenssl-devel-0.9.8h-30.27.11.x86_64.rpm
zlib-devel-1.2.3-106.34.x86_64.rpm

Controleren of NRPE kan communiceren met de remote host.

/usr/local/nagios/libexec/check_nrpe -H 192.168.1.3

Service definitie in een host configuratie file

define service{
use generic-service
service_description Root Partition
contact_groups admins
check_command check_nrpe!check_hda1
}

Het stuk na check_nrpe! is het commando wat op de remote host wordt uitgevoerd en dus is terug te vinden in de configuratiefile op de remote host.