Diesen Artikel als PDF kaufen Weitere ADMIN-Magazin Angebote

Icinga als Enterprise-Monitoring-Lösung

Neuland

Eine immer größere Community schart sich um den Nagios-Fork Icinga. Dieser Artikel versucht eine Bestandsaufnahme und stellt interessante Erweiterungen für das Monitoring-System vor.
Bernd Erk

Das als Fork von Nagios entstandene Projekt Icinga [1] hat sich in gut eineinhalb Jahren zur Enterprise-Variante der wohl am weitesten verbreiteten Open-Source-Monitoringlösung weiterentwickelt. Mit über 35 000 Downloads [2] und einer wachsenden Benutzergemeinde bietet Icinga heute eine stabile Version mit allen aus Nagios bekannten Features und darüber hinaus eine Vielzahl an Verbesserungen.

Neben vielen Optimierungen im Bereich des Icinga-Cores der neben vereinfachter Installation auch die zusätzliche Unterstützung von Oracle und PostgreSQL beinhaltet, ist beim Webinterface etwas von Grund auf Neues entstanden. Neben den aus Nagios bekannten CGIs, die auch in Icinga dabei sind und dort mit vielen Features wie Multiselect und einer Export-Schnittstelle erweitert wurden, bietet das auf PHP basierende Interface viele lange von der Community geforderte Funktionen. Dieser Artikel gibt Einblicke in die bestehende Architektur, das technische Konzept und Funktionalitäten und die wichigsten Erweiterungen, die für Icinga heute verfügbar sind.

Architektur

Wie in Abbildung 1 zu sehen stellt die Datenbank in der aktuellen Architektur das zentrale Bindeglied zwischen dem eigentliche Core-Prozess und dem neuen Webinterface da. Sämtliche Daten werden mittels im Core-Teil integrierter Datenbankschnittstelle (IDOUtils) in ein zentrales relationales Schema übertragen. Auf diese Informationen wird mittels PHP-PDO aus Icinga-Web zugegriffen, um die Daten unter Berücksichtigung von Filtern und Berechtigungen an den Benutzer auszuliefern. Der Datenbankzugriff wird in zukünftigen Versionen von Icinga mittels Doctrine [3] abgebildet, der sich als Object Relational Mapper um die eigentlichen Abfragen kümmert und so die Datenbankunabhängigkeit sicherstellt. Das Webinterface selbst kann auf dem Icinga-Hauptserver oder einem anderen Webserver installiert werden. Das Doku-Team von Icinga hat hier gute Arbeit geleistet, der ganze Installations- und Upgrade Prozess ist ausführlich auf [4] beschrieben.

Abbildung 1: Im Mittelpunkt der Icinga-Architektur steht die Datenbank. Das kann nun neben MySQL auch PostgreSQL oder Oracle sein.

Aufbau des Webinterfaces

Eine der wichtigsten Kriterien bei der Entwicklung des neuen Webinterfaces war die Modularität der Komponenten und die Möglichkeit, Erweiterungen von Frontendbausteinen, den sogenannten Cronks, und Modulen zu ermöglichen ohne das eigentliche Core-Framework verändern oder berücksichtigen zu müssen. Auch eine Verwendung einer einheitlichen Benutzerverwaltung und Autorisierung von Anwendern gegen das Basisframework war und ist selbstverständlich von großer Bedeutung.

Die Wahl fiel gleich zu Beginn des Projekts auf Agavi, einem auf Mojavi basierenden MVC-Framework, das sich um das Kerngeschäft eines Frameworks kümmert und dem Entwickler keine genauen Vorschriften zu verwendetem Persistenzframework oder Templatesystem macht. Sinn des genannten Model ViewController Konzepts ist die klare Strukturierung einzelner Applikationselemente bei gleichzeitiger Unterstützung eines flexiblen Entwicklungsprozesses. Ein Listing des Icinga-Web-Folders lässt den entsprechenden Grundaufbau im Filesystem erkennen. Die eigentlichen Userviews basieren auf HTML, CSS und dem Javascript-Framework Sencha Ext JS. Der Vorteil dieses Javascript-Frameworks liegt in der Unterstützung einer Vielzahl von Browsern und Bereitstellung der klassischen Grundfunktionen wie Tabellen, Layouts und Panelvarianten. Durch Sencha Touch ist vor kurzem auch ein leistungsfähiges Framework für mobile Applikationen hinzugekommen, das bereits in Icinga Mobile [5] Verwendung findet.

Diesen Artikel als PDF kaufen

Als digitalen Artikel

Diesen Artikel als PDF kaufen.

Preis € 1,99



Im ADMIN Online-Archiv

Abonnieren Sie das ADMIN Online-Archiv, und Sie erhalten Zugriff auf alle ADMIN-Artikel im HTML- und/oder PDF-Format.

Kommentare

Suche

ADMIN auf Twitter, Facebook, Xing

Auf Twitter folgen   

Unsere Partner:

hackerboard.deUnixboard