check_relay

Check Relay

Wenn man auf der fernen Seite keine eigene Multisite-Instanz haben will oder kann, aber dennoch mehr als ein Host per check_mk (für andere Methoden, wie Ping oder SNMP ist diese Vorgehensweise nicht geeignet) überwachen will bietet sich folgenes an:

Szenario:

Ziel: Vom Nagios Server aus soll per check_mk, ausser Server A, auch noch Server B überwacht werden.

Vorgehensweise:

  • Port (6522) auf dem Router auf Server A Port 22 weiterleiten
  • Hinterlegen des Public-Key des Nagios-Users auf Server A
  • Abfragen der Daten über SSH

Anzulegende Datei: /omd/sites/site-name/local/bin/check_mk_relay wobei site-name anzupassen ist.

#!/bin/sh

ssh -q -p 6522 -i /omd/sites/site-name/etc/id_rsa -l root $1 "nc $2 6556"

Der Private-Key für den Nagios-User liegt im Ordner „/omd/sites/mhc/etc“.

all_hosts = [
  "server-B|site-A",
]
 
ipaddresses = {
  "server-B" : "127.0.0.1",
}
 
datasource_programs = [
 ( 'check_mk_relay router-ip <HOST>', [ 'site-A'], ALL_HOSTS ),
]

Wobei „router-ip“ die externe IP des Routers ist und „server-B“ der interne Name under dem Server A, Server B kennt oder eben die IP von Server B.

Wenn SSH-Strict-Mode aktiv ist muss der Hostkey bei der ersten Verbindung bestätigt werden. Am besten bei einem ersten manuellen Test:

check_mk_relay router-ip server-B

Dies sollte dann den normalen „check_mk“-Output von server-B liefern.

Siehe: http://mathias-kettner.de/checkmk_datasource_programs.html

  • check_relay.txt
  • Zuletzt geändert: 2017/03/17 12:37
  • (Externe Bearbeitung)