Wartungszeiten


1. Funktionsweise

Im IT-Betrieb unterscheidet man zwei Arten von Ausfällen: geplante und ungeplante. Das Monitoringsystem kann – wenn es einen Ausfall feststellt – natürlich erstmal nicht wissen, ob dieser geplant war oder nicht. Über das Konzept von Wartungszeiten (Englisch Scheduled Downtimes) können Sie geplante Ausfallzeiten eines Hosts oder Services dem System bekannt machen, indem Sie für die entsprechenden Objekte eine Wartungszeit definieren. Befindet sich ein Host oder Service in so einer Wartungszeit, hat das folgende Auswirkungen:

  • In den Ansichten erscheint ein Symbol bei den betroffenen Hosts/Services.
  • Die Alarmierung über Probleme ist während der Wartung abgeschaltet.
  • Die betroffenen Hosts/Services tauchen in der Tactical Overview nicht mehr als Probleme auf.
  • In der Verfügbarkeitsanalyse werden geplante Wartungszeiten gesondert berücksichtigt.
  • Zu Beginn und Ende einer Wartungszeit wird eine spezielle Alarmierung ausgelöst, die darüber informiert.

2. Wartungszeiten eintragen

Das Setzen von Wartungszeiten geschieht über Kommandos. Alle Aktionen, die Wartungszeiten betreffen, sind hier in einem eigenen Kasten zusammengefasst:

Das Feld Downtime Comment muss immer ausgefüllt werden. Für die Definition von Start und Ende gibt es zahlreiche unterschiedliche Möglichkeiten – vom einfachen 2 hours, welches die Wartung ab sofort definiert, bis hin zu der Angabe eines expliziten Zeitraums, mit dem auch eine Wartung in der Zukunft definiert werden kann.

2.1. Flexible with duration

Diese Option ist z. B. nützlich, wenn Sie wissen, dass ein Host für ein paar Minuten DOWN gehen wird, aber die exakte Uhrzeit nicht vorhersagen können. Mit dieser Option beginnt die Wartungszeit nicht automatisch zum angegebenen Zeitpunkt, sondern erst dann, wenn der Host tatsächlich in einen Problemzustand eintritt.

Beispiel: Sie definieren eine Wartungszeit von 14:00 bis 16:00 Uhr und aktivieren die Option flexible mit einer Dauer von 30 Minuten. Um 14:00 Uhr wird die Wartungszeit noch nicht automatisch aktiv, sondern ist nur in Wartestellung. Sobald der Host auf DOWN oder UNREACH geht, beginnt die Wartungszeit und der blaue Mond erscheint. Sie dauert jetzt genau die bei der Option angegebene Zeit – egal wie sich der tatsächliche Zustand vom Host entwickelt und ggfs. auch über die eingestellte Endzeit der Wartungszeit hinaus.

Die Start-/Endzeit ist also bei den flexiblen Wartungszeiten nur das Zeitfenster, innerhalb dessen die Wartungszeit beginnt. Wenn innerhalb dieses Zeitfensters kein Problemzustand eintritt, so wird die Wartungszeit einfach ausgelassen. Alles für Hosts gesagte gilt natürlich für Services analog.

2.2. Also set downtime on child hosts

Diese Option ist für Router und Switche nützlich, aber z. B. auch für Virtualisierungshosts. Check_MK wird so auch automatisch auf alle Hosts eine Wartungszeit setzen, welche über den betroffenen Host direkt (oder bei angehaktem Do this recursively auch indirekt) erreichbar sind.

2.3. Repeat this downtime on a regular base...

Hier können Sie Wartungszeiten eintragen, die sich regelmäßig wiederholen. Diese werden weiter unten in einem eigenen Abschnitt ausführlich besprochen.

3. Wartungszeiten anzeigen und löschen

Für die Wartungszeiten gibt es in Check_MK eine eigene Ansicht, die Sie erreichen über Views ➳ Other ➳ Downtimes:

Wie in jeder Ansicht können Sie über die Filter die Auswahl einschränken. Über die Kommandos in dieser Ansicht können Sie eine oder mehrere Downtimes entfernen und sogar auch nachträglich ändern (nur  Check_MK Enterprise Edition), z. B. wenn diese verlängert werden müssen, wenn die eigentliche Wartung längert dauert als zunächst vorgesehen.

3.1. Historie

Die Ansicht Views ➳ Other ➳ History of scheduled Downtimes zeigt nicht die aktuellen Wartungszeiten, sondern deren Geschichte – also alle Ereignisse, bei denen eine Wartungszeit begonnen hat oder endete (entweder durch ein natürliches Ende oder durch das Löschen per Kommando).

4. Regelmäßige Wartungszeiten

Manche Wartungen werden regelmäßig ausgeführt – wie z. B. der automatische Neustart eines Servers einmal pro Woche. Jedesmal von Hand eine Wartung einzutragen wäre recht umständlich. Wenn es nur um die Alarmierung geht, können Sie hierzu mit Zeitperioden und dem Regelsatz Notification period for Hosts/Services arbeiten. Dies hat allerdings verschiedene Einschränkungen. Eine Wichtige ist, dass man für das Anlegen von Zeitperioden globale Konfigurationsberechtigungen benötigt.

Die  Check_MK Enterprise Edition bietet daher das Konzept von sich automatisch periodisch wiederholenden Wartungszeiten. Diese können auf zwei verschiedene Arten eingetragen werden.

4.1. Anlegen mittels Kommandos

Die erste Methode ist der Weg, den wir bereits für einmalige Wartungszeiten kennengelernt haben – über ein Kommando – aber mit der zusätzlichen Checkbox Repeat this downtime on a regular base...

Dabei wählen Sie die Periode aus, mit der sich die Wartung wiederholen soll. Das erste Auftreten tragen Sie wie gewohnt ein. Hier bietet sich der Knopf Custom time range an. Von dem hier eingetragenen Startzeitpunkt aus wird die Periode berechnet. Es gibt folgende Möglichkeiten:

hourDie Wartungszeit wiederholt sich stündlich genau um die gleiche Uhrzeit.
dayTägliche Wiederholung um die gleiche Uhrzeit.
weekWiederholung alle sieben Tage am gleichen Wochentag und zur gleichen Uhrzeit wie beim ersten Mal.
second weekWie wöchentlich, nur jetzt 14-tägig
fourth weekDas Gleiche, aber jetzt alle 28 Tage.
same nth weekday (from beginning)Hiermit können Sie Dinge realisieren wie „jeden zweiten Montag im Monat“. Check_MK nimmt dabei den Wochentag als Startzeitpunkt, guckt dann, der wievielte Tag im Monat das ist und basiert darauf die Periode. Wenn also der Starttermin am zweiten Montag des Monats ist, wird fortan jeden Monat am zweiten Montag wieder eine Wartung eingetragen.
same nth weekday (from end)Dies ist analog, allerdings wird jetzt vom Ende des Monats gerechnet, also so etwas wie „jeder letzte Freitag im Monat“.
same day of the monthBei dieser Variante bleibt der Wochentag unberücksichtigt. Hier geht es nur darum, der wievielte Tag im Monat ist. Wenn also das Startdatum am 5. eines Monats ist, so wird die Downtime fortan jeden 5. eines Monats wiederholt.

4.2. Anlegen mittels Regeln

Eine alternative, sehr elegante Methode für das Einrichten von periodischen Wartungszeiten ist das Anlegen über Regeln. Mithilfe von Host-Merkmalen können Sie damit z. B. Dinge bestimmen wie: Jeder produktive Windows-Server bekommt jeden Sonntag von 22:00 bis 22:10 Uhr eine Wartungszeit.

Zwar könnten Sie fast das Gleiche erreichen, indem Sie mit der Host-Suche alle betroffenen Server finden und die Wartungszeit dann über ein Kommando eintragen. Aber dies funktioniert natürlich nur für bestehende Server. Wird in Zukunft ein neuer Host ins Monitoring aufgenommen, so fehlt ihm dieser Eintrag. Wenn Sie stattdessen mit Regeln arbeiten, haben Sie dieses Problem nicht mehr. Ein weiterer Vorteil von Regeln ist, dass Sie die Wartungs-Policy später ändern können – einfach durch Anpassung der Regeln.

Die Regel für die regelmäßigen Wartungszeiten finden Sie unter Host & Service Parameters ➳ Monitoring Configuration ➳ Recurring downtimes for Hosts/Services.

5. Wartungszeiten und Verfügbarkeit

Wie eingangs erwähnt, haben Wartungszeiten eine Auswirkung auf die Berechung der Verfügbarkeitsanalyse. Per Default werden alle Wartungszeiten in einen eigenen „Topf“ gerechnet und in der Spalte Downtime angezeigt.

Wie genau Wartungszeiten verrechnet werden sollen, können Sie über eine Option einstellen:

Honor scheduled downtimesWartungszeiten werden in die Verfügbarkeitsgrafiken eingerechnet und als eigenständige Spalte angezeigt. Das ist das Standardverhalten.
Exclude scheduled downtimesWartungszeiten werden bei der Berechnung der 100% komplett ausgeklammert. Alle prozentualen Angaben über Verfügbarkeit beziehen sich also nur auf die restlichen Zeiten, quasi: Wieviel Prozent der Nicht-Wartungszeit war das Objekt verfügbar?
Ignore scheduled downtimesWartungszeiten werden überhaupt nicht berücksichtigt, sondern nur der tatsächliche Status, den das Objekt jeweils hatte.

Zusätzlich gibt es noch die Option Treat phases of UP/OK as non-downtime. Wenn diese angehakt ist, dann werden Zeiten, in denen ein Objekt in einer Wartung, aber trotzem gleichzeitig OK bzw. UP ist, nicht als Wartungszeit gewertet. Somit geht in die Berechnung nur derjenige Teil der Wartungszeiten ein, der tatsächlich mit einem Ausfall verbunden war.