Nagios-Ableger Icinga befreit sich von Nagios-Code-Basis

Gebloggt: Monitoring mit Icinga 2.0

| Redakteur: Thomas Drilling

Icinga Logo
Icinga Logo (www.icinga.org)

Die Incinga-Entwickler haben rund 6 Monate nach der ersten Developer-Version ihrer auf einer komplett neuen Code-Basis beruhenden 2´er Entwicklungslinie die stabile Icinga-Version 2.0 veröffentlicht.

Wichtigstes Merkmal: Mit der neuen Version 2.0 der ursprünglich als Nagios-Fork gestarteten Monitoring-Software Icinga vollenden die Entwickler die endgültige Loslösung von der Nagios-Core Code-Basis.

Neuer Monotoring-Core

Der Hauptgrund dieser mit Start der Entwicklerversion 2.0 als Primärziel ausgegebenenDesign-Entscheidung lag in den eingeschränkten Erweiterungsmöglichkeiten von Nagios-Core. Mit der jetzt freigegeben finalen Version 2.0 präsentieren die Entwickler einen komplett neuen, selbst entwickeltem Monitoring-Core, versprechen aber, dass mit Hilfe von Erweiterungen auch für Icinga 1.x geschriebene Plugins weiter funktionieren. So sind alle aus Icinga 1.x bekannten Schnittstellen optional auch für Icinga 2 verfügbar.

Icinga 2 ist als Binärpaket für Suse, Debian und Fedora, sowie im Quellcode zum Herunterladen verfügbar. Die Entwickler empfehlen aber ausdrücklich, auf Binär-Pakete zurück zu greifen und die Software nicht selbst aus den Quellen zu übersetzen.

Neues Design und neue Funktionen

Das komplett neue Multithread-Design ist auch der Hauptgrund dafür, dass die Entwickler die quelloffene, unter der GPLv2 lizenzierte Monitoring-Software in den vergangenen 20 Monaten in erster Linie in puncto Geschwindigkeit und Skalierbarkeit extrem verbessern konnten. Nach Aussage der Entwickler soll es dank des Multithread-Designs mit einer Icinga-Instanz möglich sein, bis zu 60.000 Hosts zu überwachen, wobei pro Minute bis zu eine Million aktive Überprüfungen laufen können.Ferner bietet Icinga 2 ein neues Cluster-Modell mit einer verteilten Architektur aus dem weitere Verbesserungen in den Bereichen Hochverfügbarkeit und Lastverteilung resultieren.

Ebenfalls neu: Eine dynamische Konfigurationssprache erlaubt Icinga-Anwendern das Konfigurieren von auf Mustern basierenden Objekt-Beziehungen. Die Icinga Template Library bringt bereits Beispielkonfigurationen für häufig genutzte Plugins mit. Zur Vereinfachung der Konfiguration gibt es Syntax-Hervorhebungen für die Editoren nano und vim. Ferner unterstützt Icinga jetzt das Livestatus-Protokoll nativ. Damit können Administratoren die Status-Informationen jeder Icinga-Instanz abfragen und ggf. Kommandos an jede Instanz senden. Darüber hinaus unterstützt Icinga 2.0 jetzt auch den Graphite Carbon Cache Writer nativ, sodass die Software dessen TCP-Socket direkt ansprechen kann. Neu ist auch, dass Administratoren bei Icinga 2 nur noch die Funktionen aktivieren müssen, die sie auch tatsächlich benötigen.

Überarbeitete Kommandos

Darüber hinaus haben die Entwickler eine ganze Reihe von Kommandos für Icinga 2 überarbeitet. Solche Kommandos für Überprüfungen, Benachrichtigungen oder Ereignisse akzeptieren konditionale und optionale Argumente. So müssen Administratoren etwa Zeitüberschreitungen nicht mehr als globale Option definieren, weil sich diese jetzt gezielt für einzelne Kommandos festlegen lassen. Ferner haben die Entwickler das Benachrichtigungssystem vereinfacht. Außerdem sind für wiederkehrende Stillstandszeiten in Incinga 2 keine Cronjobs mehr erforderlich, weil sie sich jetzt direkt einstellen lassen.

Weitere Details zu den Neuerungen finden sich in der umfassenden Dokumentation.