Interview mit Hubert Ströbitzer

„Prometheus ist ein sehr guter Weg, Monitoring in Docker- und Kubernetes-Umgebungen zu realisieren“

Dominik Mohilo

Microservices ohne richtige Monitoring-Tools laufen zu haben, ist das Gleiche, als würde man nachts ohne Scheinwerfer auf der Autobahn unterwegs sein, sagt Hubert Ströbitzer, Gründer von Infrastructure as a Meetup (IaaM). Im Interview zu seiner Session auf der DevOps Conference 2018 gibt er einen kleinen Einblick in die Grundlagen von Prometheus und erklärt, warum es so gut mit Container-Technologien wie Docker bzw. Kubernetes zusammenpasst.

Wer Hubert Ströbitzer einmal live erleben möchte, der hat auf der diesjährigen DevOps Conference 2018 (DevOpsCon), die vom 28. bis 30. Mai in Berlin stattfindet, die Gelegenheit dazu. In seiner Session „Prometheus for Devs“ stellt er das Monitoring-Tool vor und zeigt unter anderem die generelle Architektur von Prometheus und wie man es in Verbindung mit Grafana innerhalb von Docker nutzen kann.

JAXenter: Hallo Hubert und danke, dass du dir die Zeit genommen hast. Deine Session auf der DevOps Conference 2018 in Berlin dreht sich um das Monitoring-Werkzeug Prometheus. Vielleicht daher zunächst einmal die Frage: Wie ist Prometheus aufgebaut?

Hubert Ströbitzer: Die Kernkomponente von Prometheus ist eine Time Series Database, in der die Metriken mit einem Zeitstempel abgelegt werden. Prometheus holt sich die Daten für die Metriken von Exportern: Das sind kleine Agents, die einen Http Endpoint anbieten und meistens auf den Nodes, die zu monitoren sind, laufen. Die Daten von diesen Endpoints werden von Prometheus abgerufen und gespeichert. Sie können mittels eigener Query Language abgefragt oder mit Grafana in Form von Visualisierungen aufbereitet werden. Man kann auch Alerts implementieren um etwa eine E-Mail zu bekommen, wenn die Festplatte auf einem Node ausgeht.

JAXenter: Natürlich ist Prometheus nicht das einzige Monitoring-Tool auf dem Markt. Was unterscheidet Prometheus von vergleichbaren Produkten wie Graphite, InfluxDB usw.?

Hubert Ströbitzer: Technisch ist vor allem das Pullen der Daten ein gravierender Unterschied und Prometheus bietet keinen Cluster-Modus an.

JAXenter: Viele Entwickler nutzen heute die Vorteile der Container-Technologie, also Docker und Kubernetes. Ist Prometheus auch in diesem Kontext nutzbar?

Hubert Ströbitzer: Die Integration in Docker ist sehr bequem, da der CAdvisor auch einen Prometheus Exporter beinhaltet. Diesen Endpoint kann man auch in Kubernetes für das Monitoring verwenden. Weiters gibt es ein Service Discovery in Kubernetes für Prometheus. Meiner Meinung nach ist Prometheus ein sehr gelungener Weg, Monitoring in Docker- und Kubernetes-Umgebungen zu realisieren.

JAXenter: Welche Features fehlen deiner Meinung nach noch in Prometheus?

Hubert Ströbitzer: Ich denke, dass Prometheus den Zweck für den es gebaut wurde bereits sehr gut erfüllt. Es gibt natürlich Grenzen, wenn man exotische Use Cases in Prometheus abbilden will. Meines Erachtens wird es zum Beispiel eng, wenn man Logging- oder Session-Tracing über Prometheus abbilden möchte. Ich denke aber auch, dass es eben dafür von Anfang an nicht gedacht war, dafür gibt es andere Tools. Was ich mir wünschen würde, wäre eine einfachere Integration, um sehr große Datenmengen persistent zu halten.

DevOpsCon Whitepaper 2018

Free: 40+ pages of DevOps expert knowledge

Learn about Containers,Continuous Delivery, DevOps Culture, Cloud Platforms & Security with articles by experts like Kai Tödter (Siemens), Nicki Watt (OpenCredo), Tobias Gesellchen (Europace AG) and many more.

JAXenter: Seit einer Weile setzt Prometheus für die Visualisierung auf die Plattform Grafana. Ist es in Sachen Visualisierung alternativlos?

Hubert Ströbitzer: Wenn man will, kann man auch direkt in Prometheus mittels Console Templates komplexe Visualisierungen implementieren, das ist aber etwas schwierig. Wenn man Grafana nicht verwenden will, kann man auch seine eigene Visualisierung bauen und über das Prometheus Rest API die Daten abfragen.

JAXenter: Welche Erkenntnis sollte jeder Besucher deiner Session mit nach Hause nehmen?

Hubert Ströbitzer: Prometheus ist ein sehr gutes Tool für aktuelle Architekturen. Die leichtgewichtigen Exporter fühlen sich wie Microservices an und passen auch sehr gut in solche Umgebungen. Das Zusammenspiel mit Docker ist sehr gut gelöst. In der DevOps-Bewegung werden Feedback Loops als wesentlicher Bestandteil genannt. Ich denke da ist eine große Stärke von Prometheus, da Entwickler sehr einfach eigene Metriken mit den Client Libraries implementieren und in Grafana visualisieren können. Dafür braucht es normalerweise keine andere Abteilung oder komplizierte Konfigurationsänderungen. Der Entwickler hat alles selbst in der Hand.

Hubert Ströbitzer is the guy who supports Devs to get into DevOps mode. He is responsible to keep a Microservice stack up and running and therefore uses Docker, Kubernetes and Ansible on a daily basis. Having a strong Java and Spring coding background he tries to fill the gap between Dev and Ops and hopes to become obsolete as soon as possible. Hubert is the founder of the IaaM (Infrastructure as a Meetup – https://iaam.at) in Linz, Austria. He loves going deep into technical concerns or discuss the cultural aspects of our business. Recently he grow a strong affinity for monitoring.
Geschrieben von
Dominik Mohilo
Dominik Mohilo
Dominik Mohilo studierte Germanistik und Soziologie an der Goethe-Universität in Frankfurt. Seit 2015 ist er Redakteur bei S&S-Media.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: