Einleitung
Nagios erlaubt es Zeiträume für geplante Ausfälle für überwachte Hosts und Dienste zu definieren. Dies ist hilfreich, wenn man weiss wann ein Server down sein wird, z.B. für einen Service-Eingriff, etc. Wenn sich ein Host oder Dienst innerhalb einer geplanten Ausfallzeit befindet, wird der Versand von Benachrichtigungen für diesen Host oder Dienst unterdrückt.
Datei für Ausfallzeiten
Geplante Ausfallzeiten für Hosts und Dienste werden in der Datei gespeichert, die man mit der downtime_file-Directive in der Haupt-Konfigurationsdatei angibt.
Beibehaltung von Ausfallzeiten
Geplante Ausfallzeiten für Hosts und Dienste werden automatisch über erneute Programm-Starts hinweg gespeichert. Wenn Nagios startet, durchsucht es die Datei für Ausfallzeiten, alle alten oder ungültige Einträge entfernen und die geplanten Ausfallzeiten für alle gültigen Hosts und Dienste übernehmen.
Ausfallzeiten planen
Man kann Ausfallzeiten für Hosts und Dienst über das "extinfo"-CGI (entweder indem man sich die Host- oder Dienst-Informationen ansieht) planen. Klicken Sie bei diesem Host oder Dienst auf den Link "Schedule downtime for this host/service" um an das Formular für die Planung von Ausfallzeiten zu gelangen.
Wenn man einmal eine Ausfallzeit für einen Host oder Dienst geplant hat, wird Nagios einen Kommentar dem entsprechenden Host oder Dienst hinzufügen, der anzeigt, dass für den angegebenen Zeitpunkt bereits eine Ausfallzeit geplant wurde. Wenn der Zeitraum der geplanten Ausfallzeit vorbei ist, entfernt Nagios den Kommentar den es hinzugefügt hat, automatisch. Nett, oder?
Arten der geplanten Ausfallzeiten
Es gibt zwei verschiedene Arten von geplanten Ausfallzeiten - "fixe" und "flexible". Wenn eine Ausfallzeit für
einen Host oder Dienst über das Web-Interface geplant wird, wird man gefragt, ob die Ausfallzeit "fix" oder
"flexibel" ist.
Hier ist eine Eklärung wie sich "fixe" und "flexible" Ausfallzeiten unterscheiden:
"Fixe" Ausfallzeiten beginnen und enden an exakten Start und End-Zeitpunkten, die in dem Web-Interface zur Planung geplanter Ausfallzeiten angegeben werden. Okay, es ist wirklich SO einfach...
"Flexible" Ausfallzeiten gibt es für Zeitpunkte, an denen Sie wissen das ein Host oder Dienst für X Minuten
(oder auch Stunden) down sein wird, aber nicht genau wissen, wann dieser Dienst oder Host wieder verfügbar sein
wird. Wird eine flexible Ausfallzeit geplant, wird Nagios die geplante Ausfallzeit irgendwann zwischen dem angegebenen
Start- und End-Zeitpunkt gestartet. Die Ausfallzeit wird so lange anhalten, wie in der Dauer der geplanten Ausfallzeit
angegeben. Dies beinhaltet, dass der Host oder Dienst, der in der geplanten flexiblen Ausfallzeit angegeben wurde,
entweder down geht (oder unerreichbar wird) oder in irgendwann zwischen dem angegebenen Start- und End-Zeitpunkt
in einen nicht-OK-Status wechselt.
Der Zeitpunkt zu dem der Host oder Dienst das erste mal in einen problematischen Status wechselt signalisiert Nagios
den Startzeitpunkt der geplanten flexiblen Ausfallzeit. Die Ausfallzeit dauert anschliessend so lang, wie in der
Dauer bei der Eingabe der Werte angegeben, auch wenn der Host oder Dienst vor dem Ende der flexiblen Ausfallzeit
wiederhergestellt wird. Dies ist aus gutem Grund der Fall. Wie wir alle wissen denkt bereits zehn Mal, dass das Problem
behoben wurde (und den Server neu startet), bis es dann wirklich richtig funktioniert, oder? Smart es Feautre, nicht?
Wie geplante Ausfallzeiten die Benachrichtigung beeinflussen
Wenn sich ein Host oder Dienst innerhalb dem Zeitraum einer geplannten Ausfallzeit befindet, wird Nagios den Versand
von Benachrichtigung für den entsprechenden Host oder Dienst verhindern. Die Unterdrückung von Benachrichtigungen
wird durch das Hinzufügen eines weiteren Filter in die Benachrichtigungs-Logik
erreicht.
Man wird in diesem Fall kein Icon in den CGIs sehen können, das anzeigt, dass Benachrichtigungen für
diesen Host oder Dienst deaktiviert sind. Ist der Zeitraum der geplanten Ausfallzeit verstrichen, wird Nagios
den Versand von Benachrichtigungen wieder erlauben.
Überlappende geplante Ausfallzeiten
Wir nennen es das "Oh sche***e, es funktioniert nicht"-Syndrom:
Man nimmt einen Server für ein "Routine"-Hardware-Upgrade vom Netz, nur realisiert man erst später, dass die
Betriebssystem-Treiber nicht funktionieren, das RAID-Array im A***h ist oder Drive-Image fehlgeschlagen ist
und die Original-Platte absolut nutzlos ist.
Die Moral der Geschicht ist, dass jede Routine-Arbeit an einem Server mal eben sehr schnell drei bis vier
Mal so lange dauern kann, wie man eigentlich geplannt hatte...
Lasst uns das folgende Szenario aufstellen:
Falls man überlappende Ausfallzeiten für einen Host oder Dienst plant (in diesem Fall durch die beiden Zeiträume 19:45h bis 9:30h und 9:20 bis 1:30), wird Nagios warten, bis der letzter Zeitraum der letzten geplanten Ausfallzeit vorüber ist, bevor Nagios die Aussendung von Benachrichtigungen wieder erlaubt. In diesem Beispiel würden Benachrichtigungen für Host A bis einschliesslich 1:30 Dienstag morgen unterdrückt werden.