[Eisfair] nrpe-checks, wie?

kay kay at martinen.de
Mi Dez 21 17:12:39 CET 2016


Am 21.12.2016 um 06:10 schrob Peter Bäumer:
> nrpe Nagios Remote Plugin Executor
> Da gibt es 2 Pakete nrpe und nrpe-check
> 
> nrpe ist der Daemon der auf dem zu überwachenden Server installiert
> wird. Dort werden die Check's eingerichtet, wie z.B. die den load
> überwachen.

Ja, DEN hatte ich auf meinem Virtualsierungs-Host installiert auf dem
die VM mit dem Nagios läuft. Funktioniert nicht.
Also hab ich auf der mail-VM im Selben VM-Host den NRPE installiert und
aktiviert. Dort läuft er auch.


> nrpe-check enthält das Plugin check-nrpe, NAgios kann mithilfe des
> Check's auf den Daemon zugreifen.

Ja, den hab ich auf dem nagios-host auch. Im Nagios-Menü bringt der ein

│ 12  NRPE Hosts configuration

Menü in dem ich einen Host aus der HostsListe auswähle und dazu nur
Aktiv, SSL und Port festlegen kann.


> Auf dem zu überwachenden Server:
> in der /etc/nagios/nrpe.cfg von nrpe gibt es eine Liste von mit
> Befehlen/checks die fangen mit command an in den [] steht der Name des

Die muss ich dort doch aber nicht mehr händisch bearbeiten weil doch
bereits 5 vorab eingerichtet sind, unter anderem auch...
> 
> Die Konfiguration für load sieht im Setup so aus:
> NRPE_COMMAND_2_NAME    =  check_load
> NRPE_COMMAND_2_ACTIVE  =  yes
> NRPE_COMMAND_2_COMMAND =  check_load
> NRPE_COMMAND_2_OPTION  =  -w 15,10,5 -c 30,25,20

... was hier genau so drin steht. Aber...

> Auf dem Nagios-Server:
> 
> auf der Konsole kann man Prüfen ob die Verbindung zum nrpe Daemon geht.
> cd /usr/local/nagios/plugins
> ./check_nrpe -H 172.31.0.155
> NRPE v2.15

Ja, das kommt bei mir auch wenn ich es in der shell aufrufe.

> 
> Aufruf ./check_nrpe -H [IP-Adresse] -c [command name]
>  ./check_nrpe -H 172.31.0.155 -c check_load
> OK - load average: 0.20, 0.25, 0.20|load1=0.200;15.000;30.000;0;
> load5=0.250;10.000;25.000;0; load15=0.200;5.000;20.000;0;

Auch das funktioniert aus der shell heraus.
Aber wenn nagios dies plugin ausführt dann bekommt es keine daten.
Nagios meldet bei dem check dann "(No output returned from plugin)" und
darunter die liste der optionen wie sie auch bei '--help' käme.




> Aus dem Exitstatus wird der Status des Checks ermittelt.
> Vor dem | sind die Daten für die Nagios-Webseite, danach kommen die
> Performance-Daten für PNP4Nagios.

Kann es sein das die Verwendung von '!' als Trenner nicht einheitlich ist?

Bei check_snmp für die uptime (lt. nagios-webdoku) funktioniert ein '!
-C PUBLIC -o sysUpTime.0' mit ipfire, einem Catalyst 2900 und einer
ILO2, nicht aber bei einer ILO1.

Und ich habe in der Shell auch noch probiert:

> control # ./check_nrpe -H 192.168.1.21 !-c check_load
> ./check_nrpe -H 192.168.1.21 cd /usr/local/nagios/plugins/ check_load
> NRPE v2.15
> control # ./check_nrpe -H 192.168.1.21! -c check_load
> Could not resolve hostname 192.168.1.21!: Name or service not known

> control # ./check_nrpe -H 192.168.1.21 -c check_load
> OK - load average: 0.18, 0.19, 0.14|load1=0.180;15.000;30.000;0; load5=0.190;10.000;25.000;0; load15=0.140;5.000;20.000;0; 
> control # ./check_nrpe -H 192.168.1.21 ! -c check_load
> OK - load average: 0.11, 0.17, 0.13|load1=0.110;15.000;30.000;0; load5=0.170;10.000;25.000;0; load15=0.130;5.000;20.000;0; 
> NRPE v2.15

Das zweite ist logisch, das erste liefert immerhin noch die Version aber
der dritte und vierte ist mir etwas unklar.

Jedenfalls ob überhaupt und bei was die Optionen eines Checks so
eingeleitet werden müssen - in der Service-Konfig die Nagios-Objects bietet!

Da finde ich beim Ping-Check mit '!' eingeleitete angaben (die zudem
Default für neue Services sind), bei manchen sind keine und das obige
Beispiel für die uptime funktionierte nur mit dem '!'. Bei Check_NRPE
scheint es aber weder mit noch ohne '!' zu funktionieren.

Wie auch immer: Vermute ich richtig das ich in den optionen des
nrpe-service dann mehrere checks eintragen kann/muss die dann auf dem
entfernten host ausgeführt würden? Eine andere stelle das zu
konfigurieren gibt es doch nicht oder?

BTW, Ich kann in der Nagios-Webseite keine alerts, notifications oder
eventlog aufrufen. Die Seite mit ihrem Kopf wird zwar geladen, dann
kommt aber z.B.


Log File Navigation
Wed Dec 21 00:00:00 CET 2016
to
Present.. 		

File: /var/lib/nagios/nagios.log
	
Notification detail level for all contacts:
Older Entries First: 	
	
	

Error: Cannot open log file '/var/lib/nagios/nagios.log' for reading!

Dieses nagios.log ist da. Der Verzeichniss-Inhalt ist dieser:

control # ls -al /var/lib/nagios/
total 328
drwxr-xr-x  5 nagios nagios  4096 Dec 21 13:55 .
drwxrwxr-x 17 root   root    4096 Dec 21 00:00 ..
drwxr-xr-x  2 nagios nagios  4096 Dec 20 23:59 archives
-rw-r--r--  1 nagios nagios     6 Dec 21 13:51 nagios.lock
-rw-------  1 nagios nagios 95162 Dec 21 13:51 nagios.log
-rw-r--r--  1 nagios nagios 55749 Dec 21 13:51 objects.cache
-rw-------  1 nagios nagios 73708 Dec 21 13:39 retention.dat
drwxrwsr-x  2 wwwrun nagios  4096 Dec 21 13:51 rw
drwxr-xr-x  3 root   root    4096 Dec 19 17:00 spool
-rw-rw-r--  1 nagios nagios 74155 Dec 21 13:55 status.dat


>> N.B. Wozu sind ServiceGroups sinnvoll? Da kann man 1-x mal jeweils EINEN
>> Host und dazu EINEN service eintragen. Ich sehe da derzeit keine
>> sinnvolle verwendung für. Ne Idee?
> 
> Anzahl NAGIOS_SERVICEGROUP_1_MEMLISTE_N erhöhen
> 
> 
> ---------------------
> │  Servicegroup configuration │
> │----------------------------------│
>> │ NAGIOS_SERVICEGROUP_N                       =  1  │
> │   NAGIOS_SERVICEGROUP_1_NAME                =  root disksize   │
> │   NAGIOS_SERVICEGROUP_1_ALIAS               =  root disk size  │
> │                                            │
> │   NAGIOS_SERVICEGROUP_1_MEMLISTE_N          =  2  │
> │     NAGIOS_SERVICEGROUP_1_MEMLISTE_1_MEMBERS=  Oberon  │
> │     NAGIOS_SERVICEGROUP_1_MEMLISTE_1_SERVICE=  check root disk size   │
> │ │
> │     NAGIOS_SERVICEGROUP_1_MEMLISTE_2_MEMBERS=  localhost │
> │     NAGIOS_SERVICEGROUP_1_MEMLISTE_2_SERVICE=  check root disk size
> 

Ja. Und wo ist der Vorteil? Da kann man doch auch bei dem Service die
hosts oder eine hostgruppe angeben. Damit wird dann doch das gleiche
erreicht. Oder? Darum frage ich, weil ich keinen Sinn darin erblicke
hiermit jeweils EINEN service auf jew. EINEM Host ein zu tragen.


Kay
-- 
Posted via SN


Mehr Informationen über die Mailingliste Eisfair