Icinga als Enterprise-Monitoring-Lösung
Neuland
LConf
Eine weitere Konfigurationserweiterung für Icinga ist unter dem Namen LConf [11] bekannt. Mancher Nagios- oder Icinga-Anwender wird sich fragen, wofür noch ein Addon zur externen Pflege der Konfiguration nötig ist. Schließlich gibt es doch NConf, NagiosQL, Lilac und Nacoma. Die Antwort auf diese Frage ist jedoch genau so einfach wie die Motivation hinter LConf. Alle bestehenden Lösungen genügten eben der ein oder anderen Anforderung nicht und deshalb musste etwas Neues her. Die Grundidee hinter LConf ist die Verwendung eines LDAP-Servers zum Speichern der Konfiguration. Hier kommt LConf mit einer simplen Schemaerweiterung im Gepäck und fertig ist die Installation. LConf ordnet alle bekannten Objektstrukturen wie Hosts, Service, Timeperiods, Contacts und die diversen Gruppentypen in Baumstrukturen, den so genannten Structural Objects an und verwendet sie als hierarchische Strukturierungsebenen.
So lassen sich einzelne Host- und Service-Elemente etwa nach Ort, Servertyp, Serverraum oder anderen, vollkommen willkürlich gewählten, Strukturen sortieren und zuordnen. Besonders wichtig ist, dass die Definition der eigentlichen Service-Eigenschaften, also quasi der Templates, nicht innerhalb dieser Ebene erfolgen muss, sondern in eigenen Konfigurationsbereichen. Abbildung 4 lässt die Möglichkeit der Trennung zwischen Struktur und Konfiguration erkennen. In diesem Beispiel sind die Server »c2-mysql1«
und »c2-mysql2«
einer hierarchischen Firmenstruktur untergeordnet, die eigentliche Konfiguration erfolgt jedoch unter Verwendung des MyLinux-Templates, das lediglich in den entsprechenden Objektbaum verlinkt ist.
Sämtliche Objekte kann der Anwender mit einem LDAP-Editor seiner Wahl in andere Teilbereiche verschieben und bei Bedarf in die dortige Vererbungsstruktur integrieren. Gerade diese Freiheit in der Konfigurationsbearbeitung macht LConf äußert flexibel und gibt dem Anwender entkoppelt von jeglicher statischer Struktur die Möglichkeit die Elemente nach seinem Geschmack aufzubauen und bei Bedarf zu restrukturieren. Neben der Schemaerweiterung bringt LConf noch vier Perl-Programme mit, welche die Grundfunktionalität von LConf bilden:
- »
LConfImport.pl« : Ermöglicht den Import einer bestehenden Konfiguration durch Parsen der »Status.dat« . - »
LConfExport.pl« : Generiert die entsprechende Icinga/Nagios-Konfiguration aus dem LDAP-Baum in das File-System. - »
LConfSlaveExport.pl« : Generiert die entsprechende Teilkonfiguration für einen Monitoring-Slave. - »
LConfSlaveSync.pl« : Synchronisiert Daten und Konfiguration zwischen einem oder mehreren Slaves und dem Master.
Während LConf von Nagios- und Icinga-Benutzern verwendet werden kann, steht mit LConf for Icinga eine integrierte Konfigurationsverwaltung für Icinga zur Verfügung. LConf ist im Vergleich zur Business-Process-Erweiterung keine Sammlung von Cronks, sondern ein eigenes Icinga-Modul. Das ist an der Integration in die Primärnavigation (Abbildung 5) erkennen, welche die Pflege der Verbindungen und den entsprechenden LDAP-Editor zugänglich macht. Der LConf Connection Manager ermöglicht die granulare Berechtigung einzelner LDAP-Verbindungen für bestimmte Benutzer und Benutzergruppen. Auch mehrere Verbindungen auf einen Server mit unterschiedlichen Einstiegspunkten sind so möglich und erlauben die Delegation bestimmter Fachgebiete wie zum Beispiel Windows- oder Oracle-Server an die zuständigen Fachgruppen.
Der LDAP-Editor selbst bietet alle Funktionen einer klassischen Desktop-Applikation und erlaubt neben Volltextsuche, Massenänderungen und benutzerdefinierten Filtern auch das Kopieren von Elementen über unterschiedliche Verbindungen hinweg. So können Konfigurationen aus einer Staging-Umgebung mit einem Mausklick übernommen werden. Der LDAP-Standard und die zur Verfügung stehenden Kommandos und Libraries erlauben zusätzlich noch viele Erweiterungsmöglichkeiten außerhalb des Webinterfaces. So können beispielsweise neue CIs aus einer CMDB in ein Inbox-Folder geladen und dort manuell durch Verschiebung in eine bestimmte Gruppe integriert werden.
Wer ergänzend zu LConf-konfigurierten Objekten noch eigene Definitionen erstellen und pflegen will, kann dies selbstverständlich in eigenen Konfigurationsordnern zusätzlich tun und diese mittels Include in der »icinga.cfg«
ebenfalls laden. Eine komfortable Ergänzung bei durch LConf erstellten Objekten ist die Speicherung des entsprechenden LConf-Trees innerhalb des Objekts. So kann aus den Monitoring-Cronks wie Host- und Service-Status direkt in die Konfiguration des gewählten Objekts gewechselt werden. Auch für Nagios-Anwender lohnt sich der Einsatz von LConf und dessen Bearbeitung mit Tools wie zum Beispiel LDAP-Admin. Icinga bietet durch die Integration in das Interface einen besonderen Mehrwert und die zentrale Verwaltung und Steuerung in einer Oberfläche.
Was gibt es noch
Neben den genannten Erweiterungen gibt es bereits eine Vielzahl von Modulen und Cronks für Icinga. Neben einer PNP4Nagios-Integration, die seit Version 1.2 ebenfalls im Contrib-Verzeichnis enthalten ist, stehen das Module Heatmap [12] zur Visualisierung von Temperaturen in Rechenzentrumsumgebungen und auch die EventDB for Icinga zur Verfügung. Michael Lübben, Entwickler von Nagtrap und früherer Maintainer von Nagvis hat bereits die Arbeit an seinem Nagtrap-Modul [13] für Icinga aufgenommen. Im Wiki des Icinga-Projekts [14] finden sich einige Howtos die interessierte Entwickler bei der Umsetzung von Modulen und Cronks unterstützen und den Einstieg erleichtern.
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.
Alle Angebote zum ADMIN-Magazin im Online-Shop
Versandartikel |
Onlineartikel |




