Beyond Nagios Modernes Cloud-Monitoring mit Icinga 2
Wer seine Public- oder Private-Cloud im Griff behalten will, braucht geeignete Management-Tools und wer also wissen möchte, ob Server, Router und Anwendungen reibungslos arbeiten, kommt an Monitoring-Diensten nicht vorbei. Der Urvater des Monitoring, „Nagios“, wurde jedoch längst von modernen Cloud-Lösungen wie „Icinga 2“ abgelöst.
Anbieter zum Thema

Als vor mehr als 20 Jahren eine einfache MS-DOS-Anwendung zum "Pingen" von Novell Netware-Servern entwickelt wurde, war das eine technische Innovation. Das architektonische Grundkonzept für Nagios war damit geboren.
Jedoch erfordert die Orchestrierung komplexer Cloud-Architekturen heutzutage eine viel umfassendere und individuell anpassbare Lösung. Da in dieser Hinsicht aber nahezu keine Patches aus der Community angenommen wurden, forkte man das Projekt 2009 und es entstand Icinga. Um aktuellen Workloads gerecht zu werden und ein modulares Design zu erhalten, gab es 2014 einen kompletten Rewrite in C++ mit dem Icinga 2 entstand.
Modernes Monitoring
In Icinga 2 wurde ein nativer Cluster-Stack implementiert. Dieser schließt sowohl die HA- und Distributed Cluster sowie Mischformen ein – ohne Umwege über NSCA (Nagios Service Check Acceptor) und Co. machen zu müssen. Icinga 2 fungiert aber auch als Client und löst damit den Nagios Remote Plugin Executor (NRPE) ab.
Firmen wie Netways aus Nürnberg bieten auch Instanzen in ihrer Cloud an, mit denen man seine Services aus externer Sicht überwachen kann. Weiterhin erhielt Icinga 2 verschiedenste Integrationen: So können Performance-Daten an Timeseries Datenbanken – zum Beispiel „InfluxDB“ und „Graphite“ – oder Events an Log Management Lösungen – wie „Graylog“ oder „Elastic Stack“ – weitergereicht werden.
Aber auch der andere Weg ist möglich, so können Log-Meldungen von Logstash einen Service Status setzen. Natürlich existieren in den großen Orchestrierungs-Tools wie „Puppet“ oder „Ansible“ Module für Icinga 2, wodurch ein Aufsetzen neuer Instanz problemlos und automatisch funktioniert. Mittlerweile hat sich Icinga 2 so als eines der besten Monitoring-Systeme für unterschiedliche Multi-Cloud-Stacks etabliert.
Mit Icinga Web 2 gibt es auch eine modernere, modul-basierte Weboberfläche. So kann man beispielsweise Graphen aus „Grafana“ direkt anzeigen lassen oder sich mit „Cube“ eine schnelle Übersicht schaffen, wo welche Systeme Störungen haben. Der „Icinga Director“, wiederum ein Plugin, kann die Konfiguration der Icinga 2 Instanzen dabei voll automatisch durchführen. Dazu bezieht er Daten aus Importquellen ein, beispielsweise einem Asset-Management-System, und fügt diese über vorher definierte Synchronisationsregeln zusammen.
Der Multi-Cloud gehört die Zukunft
Laut IDC werden noch in diesem Jahr mehr als 85 Prozent der Unternehmen eine Multi-Cloud-Umgebung nutzen. In vielen Fällen entsteht damit eine wilde Mischung aus Public Cloud Services, Private und Community sowie gehosteten Clouds. Die Hälfte aller Anwender wird dabei mindestens fünf verschiedene Public-Cloud-Dienste einsetzen.
Die Art und Intensität der Nutzung kann sich jederzeit ändern. Verträge und Abonnements –etwa über Kapazitäten – werden an sich ändernde Geschäftsanforderungen angepasst. IT-Verantwortliche, die in dieser Situation die Kontrolle behalten wollen, brauchen insbesondere leistungsstarke Monitoring-Tools.
Um ein Cloud-Monitoring-System ausfallsicher, redundant und fehlalarmsicherer zu gestalten, verwendet man ein Distributed Monitoring Setup sowie ein Redundant/Failover-Monitoring. Bei verteiltem (Distributet) Monitoring werden mehrere dezentral installierte Instanzen genutzt, die ihre Erkenntnisse jeweils an einen zentralen Server senden. Bei redundantem Monitoring arbeiten zwei Instanzen vergleichbar mit einem Clusternode parallel und halten sich mit einem so genannten Heartbeat gegenseitig auf dem Laufenden.
Wie auch immer der eigene Cloud-Stack bestückt wird, moderne Monitoring-Dienste, wie eben Icinga 2 oder aber die ebenfalls aus Nagios entstanden „Shinken“ und „Naemon“, sind für IT-Verantwortliche unverzichtbar.
Monitoring bedeutet Kapazitätsplanung
Ausfälle sind nicht immer zu vermeiden. Um auf eine Störung aber dennoch frühzeitig reagieren zu können, werden Monitoring-Systeme vielfältig eingesetzt. Sie überwachen per Netzwerk die Verfügbarkeit von Diensten und informieren den Administrator per Email oder SMS, wenn etwas nicht mehr im grünen Bereich läuft.
So erfährt man bei Icinga 2 schnell, wenn der Web-Server nicht mehr antwortet, der Drucker klemmt oder eine Server-Platte vollgelaufen ist. Da das Monitoring-System solche Dienste ständig prüft, bemerkt es Ausfälle meistens, bevor sie den Endanwendern Probleme bereiten. Und wenn das System Trends in der Verfügbarkeit erfasst, gibt es dem Admin sogar wertvolle Hinweise für die Kapazitätsplanung.
Fazit
Fest steht: Monitoring ist nicht gleich Monitoring. Unternehmen müssen ihre Anforderungen an entsprechende Werkzeuge genau definieren, um für das geplante Budget auch die notwendigen Leistungen zu erhalten. Doch neben dem Preis spielen vor allem auch Aspekte wie Usabilty, Support und die via Monitoring zu erhebenden Daten eine Rolle.
Und mittlerweile gilt es natürlich auch hier eine Entscheidung zu treffen: Soll das Monitoring On-Premises oder direkt über die Cloud erfolgen soll. Aufgrund meiner Erfahrungen mit der Technik und den steigenden Anforderungen der Kunden empfehle ich für Multi-Cloud-Systeme auch ein Cloud-Monitoring.
*Über den Autor
Tobias von der Krone ist Teamlead Automation bei Profitbricks. Seit mehreren Jahren betreut er Systeme in verschiedenen Rechenzentren und verantwortet das Monitoring. Krone hat Wirtschaftsinformatik in Dresden studiert und war zuvor als IT-Spezialist und Systemadministrator bei IBM, der Creditplus Bank und Zalando tätig.
(ID:45092298)