Benutzer-Werkzeuge

Webseiten-Werkzeuge


nagios

Nagios

Installation:

Server

Doku Ubuntu 8.04.1

Hilfreiche Befehle zum Einrichten … ne Gedankenstütze eben ;-)

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
/etc/init.d/nagios restart

Windows-Client

Linux-Client

auf dem Client installieren!

Ubuntu:

apt-get install nagios-nrpe-server
apt-get install nagios-plugins

Konfigurieren:

vim /etc/nagios/nrpe.cfg

Ändern:

allowed_hosts=[IP vom Nagios-Server]
command[check_hda1]=/usr/lib/nagios/plugins/check_disk -w 20 -c 10 -p /dev/hda1

hda1 durch richtige Platte (sda1?) ersetzen → siehe /etc/fstab, ggf. noch weitere Platten hinzufügen (check_sda2 usw.)

NRPE-Server nach jeder Änderung in der nrpe.cfg restarten nicht vergessen

/etc/init.d/nagios-nrpe-server restart

Test auf dem Server:

Klappt die Verbindung?

/usr/local/nagios/libexec/check_nrpe -H [Host des Clients]

sollte die NRPE-Version liefern:

NRPE v2.8.1

Klappt der Zugriff auf die checks?

/usr/local/nagios/libexec/check_nrpe -H [Host des Clients] -c check_users

sollte die Anzahl der auf dem Client angemeldeten User liefern:

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

Commands bauen (/usr/local/nagios/objects/commands.cfg)

###############################################################################
# NRPE-Checks
###############################################################################

# MyServer
# users
define command{
        command_name    check_MyServer_users
        command_line    $USER1$/check_nrpe -H MyServer -c check_users
        }

# load
define command{
        command_name    check_MyServer_load
        command_line    $USERS1$/check_nrpe -H MyServer -c check_load
        }

MyServer.cfg bauen (/usr/local/nagios/objects/myserver.cfg)

###############################################################################
###############################################################################
#
# SERVICE DEFINITIONS
#
###############################################################################
###############################################################################


# Define a service to "ping" the local machine

define service{
        use                             local-service         ; Name of service template to use
        host_name                       MyServer
        service_description             PING
        check_command                   check_ping!100.0,20%!500.0,60%
        }


# Define a service to check the disk space of the root partition
# on the local machine.  Warning if < 20% free, critical if
# < 10% free space on partition.

define service{
        use                             local-service         ; Name of service template to use
        host_name                       MyServer
        service_description             SDA1 Partition
        check_command                   check_MyServer_sda1
        }



# Define a service to check the number of currently logged in
# users on the local machine.  Warning if > 20 users, critical
# if > 50 users.

define service{
        use                             local-service         ; Name of service template to use
        host_name                       MyServer
        service_description             Current Users
        check_command                   check_MyServer_users
        }

MyServer in /usr/local/nagios/etc/nagios.cfg verewigen:

# Definition for MyServer
cfg_file=/usr/local/nagios/etc/objects/MyServer.cfg

Config-Files ok?

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

Wenn ja, restarten und schauen, obs geklappt hat, wenn nicht: Config-Files richtig machen 8-)

/etc/init.d/nagios restart

WMS überwachen:

Verzeichnisse anlegen:

/usr/local/nagios/etc/scripts /usr/local/nagios/etc/scripts/test chmod 777 test

File bauen: /usr/local/nagios/etc/scripts/check_wms.sh

#!/bin/bash
 
#
# WMS-Test script
# KBL 23.08.2008
#
# verzeichnis einrichten
if ! test -d /usr/local/nagios/etc/scripts/prob${1}; then
  mkdir /usr/local/nagios/etc/scripts/prob_${1}
fi
 
 
# ab ins bastelverzeichnis
cd /usr/local/nagios/etc/scripts/prob_${1}
 
# saubermachen
rm /usr/local/nagios/etc/scripts/prob_${1}/*
 
# WMS ziehen aus uebergebenem Parameter
wget -O testbild.png ${2}
 
# umbenennen
mv * /usr/local/nagios/etc/scripts/prob_${1}/wmsbild.png
 
# ermitteln der Art des Files
WMSART=$(file wmsbild.png)
 
# auseinanderpuzzeln
WMSART=${WMSART:13:3}
 
# Festlegen der Soll-Fileart
SOLL="PNG"
 
# Test auf richtige Fileart
if [ $WMSART == $SOLL ]; then
    # Alles ok
    AUSGABE="OK"
else
    # hat nicht geklappt
    # Ermitteln der Fehlermeldung ueblicherweise msloadmap()
    INHALT=$(grep -ri "()" /usr/local/nagios/etc/scripts/prob_${1}/wmsbild.png)
    # Ausgabestring bauen und ausgeben
    AUSGABE="FEHLER "$INHALT
    echo $AUSGABE
    # exitcode auf 2 setzen Ausfuehrung ging schief
    exit 2
fi
 
# wenn alles geklappt hat, Ausgabe
echo $AUSGABE

Aufruf des Files mit einem GetMap-Request in command.cfg einbauen und in der host-declaration entsprechende checks zusammenbauen.

Ach so, Aufbau ist historisch gewachsen, klappt so aber, lässt sich sicher noch optimieren …

2010 … oder eben so

nagios.txt · Zuletzt geändert: 2015/11/08 20:16 von kbl

Seiten-Werkzeuge