Nagios 3 New Features – Host-Checks

This entry is part 1 of 6 in the series Nagios 3 New Features

Nagios LogoBeginnend mit diesem Post möchten wir in den nächsten Wochen in einer Serie auf einige wichtige Neuerungen von Nagios 3 eingehen.

Als lang ersehntes Feature widmen wir den ersten Eintrag dem Thema Host-Checks, welche in der aktuellen Nagios-Version komplett überarbeitet wurden. Gerade in großen Umgebungen war das Thema für viele Nagios-Administratoren und auch in vielen unserer Projekte ein leidiges Thema. Grund hierfür ist, dass die bisherige Hostcheck-Logik durchaus zur Stilllegung des Nagios-Systems führen konnte, wenn mehrere Hosts aufgrund eines Netzausfalls nicht erreichbar waren und Nagios mit der vergeblichen Kontaktaufnahme beschäftigt war.

Mit Nagios 3 gibt Ethan uns nun die Möglichkeit Host-Checks zu parallelisieren und nicht wie früher seriell abzuarbeiten. Da gerade bei einer großen Anzahl an Status-Veränderungen die Stilllegung des Monitoring-Prozesses zu Problem führte ist dies ein in der Community lang erwartetes Feature.

Durch Verwendung der neuen Option Cached Host-Checks bietet Nagios nun die Möglichkeit den aktuellen Hoststatus für einen konfigurierbaren Zeitraum als gültig anzusehen. Das hat zur Folge, das vor aktiver Prüfung des Hosts zuerst ein zeitlich gültiges Cache-Ergebnis durch den Nagios-Daemon ermittelt wird und somit ein realer Hostcheck unterbunden wird. Dieser Mechanismus hat zwar Auswirkungen auf die Genauigkeit des aktuellen Ist-Zustandes, bietet jedoch sinnvoll eingesetzt eine leistungsfähige Möglichkeit auch große Umgebungen mit kleinen Latenzen zu überwachen.

Bernd Erk

Autor: Bernd Erk

Bernd ist einer der Geschäftsführer der NETWAYS Gruppe und verantwortet das Tagesgeschäft. Da er in einem früheren Leben mit Java und Oracle Datenbanken gearbeitet hat, kümmert er sich immer noch gerne um das Thema Reporting - sowohl bei NETWAYS, als auch im Icinga Team. In seiner knappen Freizeit streitet er sich mit seinem Sohn, wer das iPad gerade benutzen darf und widmet sich der Weiterverbreitung der gehobenen fränkischen Schaschlik-Kultur.

Nagios 3 New Features – Plugins

This entry is part 2 of 6 in the series Nagios 3 New Features

Wie bereits letzte Woche angekündigt, werden wir in der nächsten Zeit auf ein paar neue Features von Nagios 3 in unserem Blog eingehen. So war letzte Woche das Thema Host-Checks an der Reihe.

Ein von einigen Plugin-Entwicklern und Nagios-Administratoren lang ersehntes Feature ist die mehrzeilige Ausgabe von Plugins in Version 3. Dies ermöglicht die Rückgabe von Checkergebnissen und Performancedaten mit einer Grüße von bis zu zu 4 KByte.

Der Hauptgrund der Limitierung, nämlich Nagios vor Overflows zu schützen, kann jedoch durch ein kleine Anpassung in der include/nagios.h (MAX_PLUGIN_OUTPUT_LENGTH) und anschließendem Neukompilieren aufgehoben bzw. erhöht werden.

Ergänzend zu den angesprochenen Multiline-Outputs besteht nun die Möglichkeit den eingebetteten Perl-Interpreter in der Konfiguration zu de- bzw. aktivieren, was eine evtl. Neukompilieren bei Bedarf überflüssig macht. Die Aktivierung erfolgt mit Hilfe des Parameters enable_embedded_perl in der nagios.cfg. Wer pro Plugin über den verwendeten Interpreter entscheiden will, kann dies direkt im Plugin via Direktive.

Bernd Erk

Autor: Bernd Erk

Bernd ist einer der Geschäftsführer der NETWAYS Gruppe und verantwortet das Tagesgeschäft. Da er in einem früheren Leben mit Java und Oracle Datenbanken gearbeitet hat, kümmert er sich immer noch gerne um das Thema Reporting - sowohl bei NETWAYS, als auch im Icinga Team. In seiner knappen Freizeit streitet er sich mit seinem Sohn, wer das iPad gerade benutzen darf und widmet sich der Weiterverbreitung der gehobenen fränkischen Schaschlik-Kultur.

Nagios 3 New Features – Timeperiods

This entry is part 3 of 6 in the series Nagios 3 New Features

Gerade bei Administratoren im Schichtbetrieb oder diversen internen Regelungen wie “Admin on Duty” waren die bisherigen Anforderungen an die zeitliche Konfiguration mit Nagios oft nur über Umwege zu erfüllen.

Nagios 3 hat auch dieser Stelle deutlich aufgeholt und bietet den Administratoren nun eine Vielzahl an Möglichkeiten Intervalle, Fehltage und zyklische Wechsel von Zuständigkeiten zu konfigurieren. Durch die Kombination von Wiederholungen, Ausschlusstagen und Reihenfolgen können auch komplexe Schichtmodelle in einer Object-Definiton eingestellt werden. Szenarien wie “der letzte Freitag im Monat ab dem 01.06.” oder auch “alle zwei Wochen außer Freitag” lassen sich spielend konfigurieren und bieten ein Maximum an Flexibilität.

Die Herausforderung in den verschiedenen Timeperiods und Contacts die wirklich ausschlaggebende Einstellung zu finden, bleibt jedoch auch mit Nagios 3 bestehen. Hier können Open-Source Addons wie unser NOMA Abhilfe schaffen, um auch in komplexen Modellen den Überblick zu behalten. Oft ist aber auch die Reorganisation der bisherigen Alarmierungskonfiguration ausreichend, um eine schnelle Übersicht zu gewährleisten.

Bernd Erk

Autor: Bernd Erk

Bernd ist einer der Geschäftsführer der NETWAYS Gruppe und verantwortet das Tagesgeschäft. Da er in einem früheren Leben mit Java und Oracle Datenbanken gearbeitet hat, kümmert er sich immer noch gerne um das Thema Reporting - sowohl bei NETWAYS, als auch im Icinga Team. In seiner knappen Freizeit streitet er sich mit seinem Sohn, wer das iPad gerade benutzen darf und widmet sich der Weiterverbreitung der gehobenen fränkischen Schaschlik-Kultur.

Nagios 3 New Features – Routing

This entry is part 4 of 6 in the series Nagios 3 New Features

Bereits in Version 2 war Nagios in Lage bei Statuswechsel einer zentralen Netzwerkomponente die betroffenen Geräte zu identifizieren und nach erneuter Prüfung im Frontend als unreachable darzustellen. Nagios hat hier in der neuen Version deutlich nachgelegt.

Waren von der erneuten Prüfung in Nagios 2 nur direkte Eltern-Kind-Verknüpfungen betroffen, ist Nagios 3 nun auch in der Lage, indirekt betroffene Systeme zu identifizieren und zu prüfen. Neu und entscheidend hierfür ist auch die Parallelisierung, welche analog zum Host-Check-Mechanismus, eine perfomante Prüfung ermöglicht. Da wir im Projektgeschäft häufig mit großen Umgebungen konfrontiert sind, ein wichtiges Merkmal und häufiger Kritikpunkt bei der früheren Version.

Bei verteilten Umgebungen bieten Nagios 3 die Möglichkeit unterschiedliche Blickwinkel auf lokale Komponenten automatisch zu übersetzen. Mit Hilfe des Parameters “translate_passive_host_checks” können passive Ergebnisse entfernter Nagios-Server in korrekte lokale Zustände übersetzt werden. Die Dokumentation bietet hier ausführliche Erklärungen und sinnvolle Einsatzgebiete.

Bernd Erk

Autor: Bernd Erk

Bernd ist einer der Geschäftsführer der NETWAYS Gruppe und verantwortet das Tagesgeschäft. Da er in einem früheren Leben mit Java und Oracle Datenbanken gearbeitet hat, kümmert er sich immer noch gerne um das Thema Reporting - sowohl bei NETWAYS, als auch im Icinga Team. In seiner knappen Freizeit streitet er sich mit seinem Sohn, wer das iPad gerade benutzen darf und widmet sich der Weiterverbreitung der gehobenen fränkischen Schaschlik-Kultur.

Nagios 3 New Features – Custom Object Variables

This entry is part 5 of 6 in the series Nagios 3 New Features

Bei Nagios wurde immer wieder die Möglichkeit vermisst, eigene Informationen an Objekte wie Host und Services zu binden und so zusätzliche Angaben wie SNMP-Community oder ICQ-Number zu speichern. Auch Standortangaben wie Rackplatz und ggf. Serverraum sind immer wieder von Bedeutung.

Mit Nagios 3 haben Administratoren genau diese Möglichkeit indem Sie den entsprechenden Variablen bei Host-, Service und Contakt-Definition ein “_” voranstellen.

So könnte eine Hostdefinition dann aussehen:

define host{
   host_name	netways_server
   _dc_name	RZ1; Angabe des Rechenzentrums
   _dc_rackr	R104;	 Angabe des Racks
   }

Die entsprechenden Variablen werden über Templates bei Bedarf auch vererbt und können mit Hilfe von Macros in anderen Scripts verwendet werden. Eine detaillierte Auskunft gibts in der offiziellen Doku.

Bernd Erk

Autor: Bernd Erk

Bernd ist einer der Geschäftsführer der NETWAYS Gruppe und verantwortet das Tagesgeschäft. Da er in einem früheren Leben mit Java und Oracle Datenbanken gearbeitet hat, kümmert er sich immer noch gerne um das Thema Reporting - sowohl bei NETWAYS, als auch im Icinga Team. In seiner knappen Freizeit streitet er sich mit seinem Sohn, wer das iPad gerade benutzen darf und widmet sich der Weiterverbreitung der gehobenen fränkischen Schaschlik-Kultur.