{{ http://nagios.sourceforge.net/docs/3_0/images/nagios.jpg |Nagios}} \\ ===== Service- und Host-Freshness Prüfungen ===== \\ {{http://nagios.sourceforge.net/docs/3_0/images/upto.gif |Hoch zu}} \\ Hoch zu: [[toc|Inhalt]]\\ {{http://nagios.sourceforge.net/docs/3_0/images/seealso.gif |Siehe auch}} \\ Siehe auch: [[passivechecks|Passive Checks]], [[distributed|Verteilte Überwachung]], [[redundancy|Redundante und Failover-Überwachung]] \\ \\ **__Einführung__** \\ \\ Nagios unterstützt ein Feature, das die "Frische" (Freshness) der Host- und Service-Checks überprüft. Der Zweck der Frische-Prüfung ist es, bei passiven Host- und Service-Prüfungen sicherzustellen, dass diese regelmäßig von externen Applikationen zur Verfügung gestellt werden. \\ \\ Frische-Prüfungen sind sinnvoll, wenn Sie sicherstellen wollen, dass [[passivechecks|passive Prüfungen]] so regelmäßig empfangen werden wie Sie das erwarten. Das kann in [[distributed|verteilten]] und [[redundancy|Failover]] Überwachungsumgebungen sehr sinnvoll sein. \\ {{ http://nagios.sourceforge.net/docs/3_0/images/freshness.png|Minty Fresh}} \\ \\ **__Wie funktioniert die Frische-Prüfung?__** \\ \\ Nagios prüft periodisch die Frische der Ergebnisse für alle Hosts und Services, bei denen Frische-Prüfungen aktiviert sind. \\ *ein Frische-Schwellwert wird für jeden Host oder Service berechnet.\\ *für jeden Host/Service wird das Alter des letzten Prüfungsergebnisses mit dem Frische-Schwellwert verglichen.\\ *wenn das Alter des letzten Prüfungsergebnisses größer als der Frisch-Schwellwert ist, wird das Prüfergebnis als "abgestanden" (stale) betrachtet.\\ *wenn das Prüfergebnis als abgestanden angesehen wird, wird Nagios eine [[activechecks|aktive Prüfung]] für den Host oder Service mit dem Kommando ausführen, das in der Host- oder Service-Definition angegeben ist. \\ {{http://nagios.sourceforge.net/docs/3_0/images/tip.gif |Hinweis}} \\ Hinweis: Eine aktive Prüfung wird ausgeführt, selbst wenn aktive Prüfungen programmweit oder auf Host- bzw. Service-spezifischer Basis deaktiviert sind. \\ \\ Wenn Sie beispielsweise einen Frische-Schwellwert von 60 für einen Ihrer Services haben, wird Nagios diesen Service als abgestanden ansehen, wenn das letzte Prüfergebnis älter als 60 Sekunden ist. \\ \\ **__Frische-Prüfungen aktivieren__** \\ \\ Was Sie tun müssen, um Frische-Prüfungen zu aktivieren... \\ *aktivieren Sie Frische-Prüfungen auf programmweiter Basis mit den [[configmain#check_service_freshness|check_service_freshness]] und [[configmain#check_host_freshness|check_host_freshness]]-Direktiven.\\ *benutzen Sie die [[configmain#service_freshness_check_interval|service_freshness_check_interval]]- und [[configmain#host_freshness_check_interval|host_freshness_check_interval]]-Optionen, um Nagios mitzuteilen, wie oft es die Frische von Host- und Service-Ergebnissen prüfen soll.\\ *aktivieren Sie Frische-Prüfungen auf Host- und Service-spezifischer Basis, indem Sie die //check_freshness//-Option in Ihrer Host- und Service-Definitionen auf 1 setzen.\\ *konfigurieren Sie Frische-Schwellwerte, indem Sie die //freshness_threshold//-Option in Ihren Host- und Service-Definitionen setzen.\\ *konfigurieren Sie die //check_command//-Option in Ihren Host- oder Service-Definitionen, so dass sie ein gültiges Script enthalten, das benutzt werden kann, um den Host oder Service aktiv zu prüfen, wenn er als abgestanden angesehen wird.\\ *Die //check_period//-Option in Ihren Host- und Service-Definitionen wird benutzt, wenn Nagios festlegt, wann ein Host oder Service auf Frische geprüft werden soll, um sicherzustellen, dass es sich um ein gültiges Zeitfenster handelt.\\ \\ {{http://nagios.sourceforge.net/docs/3_0/images/tip.gif |Hinweis}} \\ Hinweis: Wenn Sie keinen Host- oder Service-spezifischen //freshness_threshold//-Wert angeben (oder ihn auf Null setzen), wird Nagios automatisch einen Schwellwert berechnen, der darauf basiert, wie oft Sie den jeweiligen Host- oder Service überwachen. Ich würde empfehlen, dass Sie explizit einen Frische-Schwellwert angeben, statt dass Nagios einen für Sie auswählt. \\ \\ **__Beispiel__** \\ \\ Ein Beispiel für einen Service, der eine Frische-Prüfung benötigen könnte, wäre einer, der den Status Ihrer nächtlichen Backups meldet. Vielleicht haben Sie ein externes Script, welches das Ergebnis des Backup-Jobs an Nagios meldet, sobald das Backup beendet ist. In diesem Fall werden alle Prüfungen/Ergebnisse für diesen Service durch eine externe Applikation mit Hilfe von passiven Prüfungen zur Verfügung gestellt. Um sicherzustellen, dass der Status des Backup-Jobs täglich gemeldet wird, können Sie die Frische-Prüfung für diesen Service aktivieren. Falls das externe Script das Ergebnis des Backup-Jobs nicht meldet, kann Nagios ein kritisches Ergebnis imitieren, indem man folgendes tut... \\ \\ Nachfolgend, wie die Definition für den Service aussehen könnte (einige benötigte Optionen fehlen...) \\ define service{ host_name backup-server service_description ArcServe Backup Job active_checks_enabled 0 ; aktive Prüfungen sind NICHT aktiviert passive_checks_enabled 1 ; passive Prüfungen sind aktiviert (dadurch werden Ergebnisse gemeldet) check_freshness 1 freshness_threshold 93600 ; 26 Stunden Schwellwert, nachdem Backups nicht immer zur gleichen Zeit beendet sind check_command no-backup-report ; dieses Kommando wird nur ausgeführt, wenn der Service als "abgestanden" angesehen wird ...andere Optionen... } \\ Beachten Sie, dass aktive Prüfungen für den Service deaktiviert sind. Das ist so, weil die Ergebnisse für den Service nur durch eine externe Applikation geliefert werden. Die Frische-Prüfung ist aktiviert und der Frische-Schwellwert ist auf 26 Stunden gesetzt. Das ist ein bisschen mehr als 24 Stunden, weil Backup-Jobs ab und zu länger dauern (abhängig davon, wie viele Daten zu sichern sind, wie viel Netzwerkverkehr herrscht, usw.). Das //no-backup-report//-Kommando wird nur ausgeführt, wenn die Ergebnissse des Service als abgestanden angesehen werden. Die Definition des //no-backup-report//-Kommandos könnte wie folgt aussehen... \\ define command{ command_name no-backup-report command_line /usr/local/nagios/libexec/check_dummy 2 "CRITICAL: Results of backup job were not reported!" } \\ Falls Nagios erkennt, dass das Service-Ergebnis abgestanden ist, wird es das //no-backup-report//-Kommando als eine aktive Service-Prüfung ausführen. Das führt dazu, dass das //check_dummy//-Plugin ausgeführt wird, das einen kritischen Status an Nagios meldet. Der Service wird dann in einen kritischen Zustand gehen (falls das nicht bereits der Fall ist) und wahrscheinlich wird jemand über das Problem informiert. \\