Icon Rufen Sie uns an
+49 441.309197-69 +49 441.309197-69
 
DE

Modernes Monitoring - Icinga 2 bei bytemine

Posted by Jan Schoone on Wednesday, July 06, 2016

Icinga 2

Wie schon im Blogpost zum bytemine Hackathon 2015 und zum idbad arbeiten wir daran, Icinga 2 für unsere Netzwerk-, Server- und Dienstüberwachung einzusetzen. Langfristig soll damit auch unser noch verwendetes Monitoring auf Basis von Icinga 1 abgelöst werden.

Mit Icinga 2 liefert das Icinga Project eine vollständige Neuentwicklung mit moderner Technologie. Es bringt z.B. eine native Cluster-Funktion für Hochverfügbarkeit, Erweiterung der Backend-Unterstützung im Livestatus, ein performanteres IDO-Modul, Autoverteilung auf Satelliten und eine Entlastung durch mehrere Instanzen mit.

Zugegeben, wir haben ein wenig gebraucht, um die Vorteile von Icinga 2 zu erkennen und sie damit auch einzusetzen. Angefangen hat es damit, dass versucht wurde die Hosts und Services quasi eins-zu-eins, jedoch in der neuen Syntax in die Konfiguration zu übernehmen. Das bedeutet, dass Icinga 2 genau dasselbe gemacht hat wie Icinga 1. Es überprüfte beispielsweise bestimmte Ports, die Passwortauthentifizierung vom SSH-Server oder den Inhalt auf bestimmten Homepages. Remote-Checks wurden durch NRPE durchgeführt. Es funktionierte, doch der Aufwand war im Endeffekt derselbe und eigentlich kann das doch auch alles Icinga 1. Um das Ganze besser zu machen wurde die sehr aktuelle und hilfreiche Icinga 2 Dokumentation gewälzt, Webinare von NETWAYS geschaut und im Monitoring Portal das Forum durchstöbert, bis eins klar war: Zonen! Wir brauchen Zonen! Und den Icinga 2 Client.

Mit Zonen konnten wir ein verteiltes Monitoring realisieren. Das war zum Beispiel wichtig, da auch von Kunden interne Maschinen überwacht werden sollten. In dem Zuge wurde für uns und für den Kunden jeweils eine Zone angelegt. Beim Kunden gibt es eine Instanz, welche von außen erreichbar ist. über diese ist es möglich die internen Instanzen zu überprüfen. Aber auch das wurde bei Icinga 2 so clever gelöst, dass eine Verbindung nur in eine Richtung notwendig ist. Das bedeutet, dass die internen Instanzen den Icinga 2 Master direkt erreichen und sich alle Informationen und Konfiguration holen können.

Der Icinga 2 Client war bei dieser Arbeit eine wunderbare Unterstützung. Auf der Maschine installiert, wird gleich eine Reihe von vorgefertigten Kommandos mitgeliefert. Die Instanzen können mit dem Icinga 2 Client über die API direkt mit dem Master kommunizieren, nachdem die SSL-Zertifikate von diesem beglaubigt wurden. Diese Zertifikate werden zudem natürlich auch noch dafür verwendet, dass jede Kommunikation zwischen Client und Master verschlüsselt abläuft. Ist die Verbindung hergestellt, ist es möglich auf dem Master wie gewohnt die Host- und Service-Definitionen anzulegen, welche nach einem Neustart direkt im Monitoring auftauchen, allerdings vom Client überprüft werden.

Icinga Web 2

Klicken zum Vergrößern

Ist das Backend eingerichtet, braucht es natürlich auch eine sinnvolle, übersichtliche Oberfläche, um gegebenenfalls kritische Dienste auf einen Blick zu erfassen. Zusätzlich zu Icinga 2 kam somit das Icinga Web 2 heraus. Eine schöne neue Methode, um sich einen Überblick zur Monitoring-Umgebung zu verschaffen.

Auf dem Bild befindet sich eine kleine Sammlung von Checks. Schön zu sehen ist, dass bereits bei der Installation alle Standardchecks mit angelegt werden und direkt informative Ergebnisse ausgeben.

Es ist möglich Icinga Web 2 an LDAP oder eine Datenbank anzubinden, um damit Benutzer zu importieren und diesen direkt über die Weboberfläche Rechte zu geben. Diese könnten z.B. "Zeige nur Hosts der Host-Gruppe 'Mustergruppe' lauten, bekäme nach dieser Einschränkung aber alle Rechte". Des weiteren kann Icinga Web 2 mit Modulen ausgestattet werden, wie z.B. Graphite und dem Icinga Director. Der Icinga Director ist eine recht junge Entwicklung und wurde erst im März diesen Jahres herausgegeben. Der Director erlaubt die Bearbeitung der Monitoring-Konfigurationen direkt über die Weboberfläche und findet auch bei uns voraussichtlich bald Einzug.