peshkova - stock.adobe.com
Fünf Open-Source-Tools zum Monitoring von Cloud-Umgebungen
Unternehmen, die auf die Cloud setzen, benötigen leistungsfähige Software zur Überwachung ihrer Anwendungen. Im Open-Source-Bereich gibt es einige mächtige Tools für diese Aufgabe.
Dedizierte Tools aus dem Open-Source-Bereich zum Monitoring der Cloud bieten einige Vorteile gegenüber den vorgegebenen Werkzeugen vieler Provider. Erfahren Sie hier, welches der Tools am besten zu Ihrer Cloud-Strategie passt.
Viele der Business-Lösungen aus dem Open-Source-Feld sind in den vergangenen Jahren immer umfangreicher und oft auch ausgereifter geworden. Das trifft ebenso auf Software zum Monitoring von Cloud-Umgebungen zu. Das gerade angebrochene Jahr 2019 bietet deshalb viele Möglichkeiten für Unternehmen, die nach neuen Wegen suchen, um ihre in der Cloud untergebrachten Anwendungen gründlicher als bisher zu überwachen.
Gerade für Entwickler und Admins sind das gute Nachrichten, weil die von den größeren öffentlichen Cloud-Plattformen wie AWS (Amazon Web Services) und Microsoft Azure angebotenen Monitoring-Möglichkeiten oft nicht ausreichen, um ihre Cloud-Anwendungen zufriedenstellend zu überwachen. Das trifft besonders auf Applikationen in Multi-Cloud-Umgebungen oder in der Private Cloud zu.
Die im Folgenden vorgestellten Tools reichen von weniger bekannten Werkzeugen bis zu bei vielen Anwendern bereits seit einiger Zeit beliebten Lösungen. Sie bieten sich an, um in dem vor uns liegenden Jahr den Schutz Ihrer Cloud-Umgebung deutlich zu verbessern.
Riemann
Riemann ist ein auf einen dedizierten Zweck ausgerichtetes Tool, mit dem sich verteilte Anwendungen und Infrastrukturen überwachen lassen. Die Open-Source-Software ermöglicht es Entwicklern beispielsweise, unterschiedliche Arten von Ereignissen festzulegen, die überwacht werden sollen. Dazu kommen so genannte Streams, die Alarme auslösen, wenn ein bestimmtes Event eintritt. Nutzer können ihre Streams so konfigurieren, dass zum Beispiel E-Mails automatisch versendet oder Nachrichten via Slack abgesendet werden können, um möglichst schnell informiert zu werden.
Aus den Diensten, die Riemann überwacht, erstellt das Tool einen Index. In einem Dashboard können die Daten weiter untersucht werden. Entwickler können Riemann außerdem so einrichten, dass die Daten an eine weitere Anwendung wie zum Beispiel Grafana automatisch übergeben werden, um sie dort weiter auszuwerten und um sie zu visualisieren.
Für manche Anwender mag der auf den ersten Anschein begrenzte Funktionsumfang von Riemann wie eine Einschränkung wirken. So gibt es zum Beispiel nur wenige Möglichkeiten, das Dashboard nach den eigenen Vorstellungen anzupassen. Allerdings lässt sich Riemann relativ leicht mit einer Reihe anderer Tools verbinden, die mehr Möglichkeiten bieten.
cAdvisor
Ein weiteres Monitoring-Tool aus dem Open-Source-Bereich ist cAdvisor. Ein ausführlicher Blick darauf lohnt sich auf jeden Fall, auch wenn es bislang noch relativ wenig bekannt ist. Der Name ist die Kurzform von Container Advisor. Das Tool ist eines der ersten Werkzeuge, die ganz bewusst für in Containern untergebrachte Anwendungen entwickelt wurden. Auch wenn es andere Arten von Cloud-Apps nicht überwachen kann, hat es den großen Vorteil, selbst in einem Container ablaufen zu können. Es genügt also einfach das Deployment eines weiteren Containers, um cAdvisor in der eigenen Umgebung einzusetzen.
cAdvisor verfügt über ein grafisches Interface, das zur Visualisierung der gesammelten Daten dient. Zu seiner Nutzung genügt ein normaler Browser, während die Konfiguration über die Kommandozeile erfolgt. Im Vergleich zu manchen kommerziellen Cloud-Monitoring-Tools mögen die Funktionen von cAdvisor nicht sehr umfangreich wirken. Da es aber eines der wenigen Open-Source-Tools zum Monitoring von Containern in der Cloud ist, sollten Sie es durchaus in Erwägung ziehen. Das gilt ganz besonders für Teams, die Docker nutzen, um ihre Anwendungen in der Cloud zu hosten.
Elasticsearch
Manche Unternehmen werden Elasticsearch bereits kennen. Es ist ein Open-Source-Tool, mit dem sich schnell große Datenmengen durchsuchen lassen.
Elasticsearch ist aber kein klassisches Monitoring-Tool aus dem Open-Source-Bereich wie die anderen hier vorgestellten Programme. Es ist trotzdem ebenfalls sehr nützlich zur Überwachung der Cloud. Um die Monitoring-Daten, die Elasticsearch verarbeitet, zu sammeln und zu visualisieren, benötigen IT-Abteilungen aber noch weitere Anwendungen wie Kibana oder Logstash. Als Teil einer solchen Tool-Sammlung bringt Elasticsearch mächtige Suchfunktionen mit, mit denen Admins und Entwickler die anfallenden Cloud-Monitoring-Daten besser verstehen können. Außerdem ist das Programm sehr skalierbar, so dass es dazu eingesetzt werden kann, nur eine kleine Zahl von Applikationen oder auch Tausende von ihnen zu überwachen, ohne dass dazu die Konfiguration geändert werden muss.
Wenn es zusammen mit anderen Monitoring-Tools eingesetzt wird, ist Elasticsearch eine Open-Source-Alternative zu dem sehr erfolgreichen Splunk. Damit soll aber nicht angedeutet werden, dass es ein voller Ersatz für Splunk ist. In manchen Situationen ist es jedoch durchaus eine taugliche Wahl, die in der Regel weit weniger Kosten verursacht.
Graphite
Graphite ist bereits ein beliebtes Open-Source-Tool, um Cloud-Apps und -Infrastrukturen zu überwachen. Das wird sich auch 2019 vermutlich nicht ändern.
Der Einsatzbereich von Graphite ist dabei relativ eng begrenzt: Es ermöglicht seinen Nutzern, über einen bestimmten Zeitraum Daten zu erheben und sie dann zu visualisieren. Dabei sammelt und speichert es diese Daten nicht auf Dauer. Unternehmen können Graphite jedoch mit einigen anderen Tools wie zum Beispiel Riemann gemeinsam nutzen, um manche der benötigten Aufgaben zu erfüllen. Aus diesem Grund ist Graphite kein allumfassendes Cloud-Monitoring-Tool. Es dient stattdessen als zielgerichtetes und sehr erweiterbares Visualisierungswerkzeug für Ihre Monitoring-Daten.
Prometheus
Für viele Admins und Entwickler ist Prometheus eines der bekanntesten Cloud-Monitoring-Tools aus dem Open-Source-Bereich.
Prometheus verfügt über viele Funktionen und bietet zahlreiche Konfigurationsmöglichkeiten. Es lässt sich außerdem gut mit anderen Visualisierungs-Tools wie Grafana integrieren, verfügt aber auch über eine eigene Visualisierungs-Engine. Prometheus bietet ein API (Application Programming Interface) an, um Daten an externe Tools zu übergeben. Dazu lässt sich die eigens dafür entwickelte Abfragesprache PromQL nutzen, mit der Monitoring-Daten für ihre spätere Auswertung vorbereitet werden können.
Auch wenn Prometheus zu den am besten ausgestatteten Open-Source-Tools zum Monitoring der Cloud gehört, gibt es doch manche Bereiche, die sich damit nicht abdecken lassen. So ist es zum Beispiel kein Werkzeug, um Log-Daten zu verwalten. Auch verfügt es über keine automatisierte Erkennung von verdächtigen Aktivitäten und die integrierten Funktionen zum Visualisieren sind relativ bescheiden. Aber auch Prometheus kann mit anderen Lösungen erweitert werden, um die damit möglichen grafischen Auswertungen zu verbessern.