Neben der Integration des Network Flow Monitorings von ntop haben wir euch auf der Checkmk Konferenz #6 auch etwas über die Integration mit Prometheus erzählt, einer Open-Source-Software, die oft für die Überwachung von schnelllebigen Containerumgebungen eingesetzt wird. Da Checkmk bereits sowohl Container- als auch Kubernetes-Architekturen überwachen kann, stellt sich die naheliegende Frage: Warum integrieren wir also Prometheus?
Setzt ein DevOps-Team in einem Unternehmen auf Prometheus, während das IT-Operations-Team im Einsatz hat, gestaltet sich der Informationsaustausch bei einem Problem zwischen beiden Teams als schwierig, wie Wontek Hong in seinem Vortrag auf der Checkmk Konferenz #6 erläuterte. Mit der Integration von Prometheus wollen wir mit Checkmk die Lücke zwischen IT-Operations-Teams und DevOps-Teams schließen. Künftig wird es so für beide Teams möglich sein, Informationen zu teilen und somit den gleichen Wissensstand für eine Problemlösung zu haben.
Wontek gab den Zuhörern zunächst einen kurzen Überblick über die Funktionalität und Logik von Prometheus. Da die Software Echtzeit-Metriken in einer Zeitreihendatenbank aufzeichnet, die es mittels eines HTTP-Pull-Modells abruft, ermöglicht Prometheus ein sehr flexibles Monitoring. Das bedeutet auch, dass die Software sehr metrikbasiert ist und davon abhängig ist, möglichst viele Metriken einzusammeln.
Sogenannte Exporter helfen dabei, die existierenden Metriken aus den verschiedenen Systemen als Prometheus-Metriken in die Datenbank zu exportieren, etwa ein Redis Exporter für Redis-Metriken. Das Prometheus-Team unterstützt derzeit 13 von aktuell 161 verfügbaren Exportern. Über seine eigene Query-Sprache PromQL liefert es außerdem ein leistungsfähiges, aber komplexes Tool für die Analyse von Daten.
Durch die Integration kombiniert Checkmk die Flexibilität von Prometheus mit dem eigenen kontextbasierten Monitoring. Die Integration ermöglicht ein Special Agent, der auf der Checkmk-Instanz läuft. Zum einen lassen sich Metriken der Exporter in Checkmk übertragen und dort im Host/Services-Schema von Checkmk darstellen. Diese Services lassen sich anschließend für die Alarmierung in das leistungsstarke Notification-System von Checkmk einbinden. Für den Anfang unterstützt Checkmk die drei beliebtesten Exporter.
Zum anderen kann der Nutzer PromQL Queries von Checkmk aus versenden. Die Antwort von Prometheus verarbeitet der Special Agent dann ebenfalls und überträgt diese in das Checkmk-Monitoring. Anders als bei den Exportern kann der Anwender bei eigenen PromQL Queries keine Schwellenwerte mit Checkmk festlegen. Einen ersten Einblick in die Möglichkeiten des Zusammenspiels zwischen Checkmk und Prometheus gab Wontek außerdem in einer kurzen Demo.
Mit der Integration von Prometheus in Checkmk macht tribe29 einen wichtigen Schritt in Richtung eines einheitlichen Monitorings. Schon jetzt stellen dynamische Containerumgebungen einen wichtigen Teil der IT-Umgebung in Unternehmen dar.
Wir haben Wonteks Vortrag inzwischen auch auf Youtube veröffentlicht:
In unserem nächsten Post werdet ihr alles Wichtige rund um unsere neue REST-API und Check-API erfahren.