Archive for the 'Nagios 3' Category

Nagios 3.0.5 released

Trotz der Präsidentschaftswahl am gestrigen Dienstag war Ethan fleissig und hat Nagios 3.0.5 veröffentlicht. Laut Changelog bringt die neue Version vor allem Security-Bugfixes und einige Erläuterungen zu diesem Thema in der Dokumentation. Da die Schwachstelle in der cmd.cgi einem Angreifer erlauben würde, beliebigen Code auf dem Nagios System auszuführen, ist ein Update dringend angeraten.

Wie immer steht die aktuelle Version auf Sourceforge zum Download bereit.

Nagios 3.0.4 Released

Vor ein paar Stunden ist Nagios 3.0.4 veröffentlicht worden. Laut Changelog bringt die neue Version vor allem Bugfixes für Probleme aus den Vorgängerversionen und wichtige Patches für Solaris und für das Problem mit der hohen CPU Auslastung unter OS X. Die aktuelle 3.0.4 Version kann von der Nagios-Homepage heruntergeladen werden.

Nagios 3 New Features - Serie

In den vergangenen Wochen haben wir immer wieder einige Neuerungen von Nagios 3 vorgestellt und sind in kurz Beispielen darauf eingegangen. Nachfolgend haben wir nochmals die vergangenen Posts zusammengestellt um einen Überblick über die aus unserer Sicht wichtigsten Features zu geben.

Selbstverständlich gab es darüber hinaus noch eine Vielzahl an Änderungen und Erweiterungen. Eine vollständige Liste findet ihr auf nagios.org. Gerne stehen wir natürlich für weitere Fragen zu Nagios zur Verfügung. Entweder via Kommentar oder vielen anderen Möglichkeiten welche unserer Site zu entnehmen sind.

Nagios 3 New Features - Custom Object Variables

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.

Nagios 3 New Features - Routing

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 Lag, 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.

Nagios 3 New Features - Timeperiods

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.

Nagios 3 New Features - Plugins

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.

Nagios 3 New Features - Host-Checks

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.