Observability vs. Monitoring

Lehrreiche Videospiele

24. Februar 2022, 12:00 Uhr | Frederik Bijlsma/am
© Wolfgang Traub

Die Begriffe Observability und Monitoring sind oft fälschlicherweise als Synonyme in Gebrauch. Monitoring beschreibt den Prozess der Erfassung von Metriken und Warnmeldungen zur Überwachung des Zustands und der Leistung einzelner IT-Infrastrukturkomponenten. Der unterhaltsame Vergleich mit zwei bekannten Videospielen verdeutlicht die Abgrenzung zu Observability.

Mit einer Kombination aus Tools und Instrumenten verwenden IT-Teams häufig Tools für das Infrastruktur-Monitoring, um Daten über den gesamten Stack zu sammeln und zu analysieren. Für das Monitoring von Diensten, die in einer öffentlichen Cloud bereitstehen, können zusätzlich Cloud-Monitoring-Tools erforderlich sein. Monitoring ist eine Teilmenge von Observability. Das Infrastruktur-Monitoring allein kann mit den Anforderungen verteilter Anwendungen oft nicht Schritt halten.

Observability ermöglicht es, die verschiedenen Systeme, aus denen eine Anwendung besteht – einschließlich Micro-Services, Container und andere Hardware- und Softwarekomponenten – zu untersuchen und Ereignisse zu korrelieren. Datenanalysen und Automatisierung ermöglichen es, unvorhergesehene Fragen zu beantworten und Probleme zu beheben, sobald sie auftreten. Der Unterschied der zwei Begriffe lässt sich auch gut an den bekannten Videospielen Super Mario Bros. und Minecraft festmachen. Die Welten bei Super Mario Bros. sind vielfach bekannt. Gleichgültig, vor welchem Fernseher man sitzt, es gibt acht Welten mit vier Stufen und unabhängig davon, wie oft man neu startet, die Gegner warten immer an der gleichen Stelle. Erfahrene Spieler wissen sogar, wie sie den Sprung am Ende eines jeden Levels timen müssen, damit an der Spitze des Fahnenmastes das für das Spiel charakteristische Feuerwerk erscheint.  Bei einem System wie diesem lassen sich Metriken sammeln und anhand dieser kann man sich ein gutes Bild vom Zustand des Systems machen. Die Spanne der möglichen Punkte, die man erreichen kann, ist bekannt und auch die Zeit, die man durchschnittlich für die Fertigstellung einer Stufe benötigt. Anhand dieser Daten lässt sich ein gutes Bild vom Zustand des Systems machen. Liegen die Werte außerhalb ihres normalen Bereichs, ist etwas mit dem Spiel nicht in Ordnung, und es ist auch ungefähr bekannt, was das sein könnte. Dafür reicht ein einfaches Monitoring-Tool aus.

Anders ist es bei Spielen wie zum Beispiel Minecraft. Hier ist die Welt unendlich groß und lässt sich vermeintlich grenzenlos manipulieren. Minecraft ist für das freie Spiel ohne ein klares Ziel konzipiert. Es geht um Erkundung und Überleben und die Interaktion mit anderen Spielenden. Wie sollte man ein so komplexes System auch nur ansatzweise messen? Man weiß schließlich nicht, was alles in die Messung miteinfließen soll. 

Damit Monitoring den Zustand eines Systems genau abbilden kann, müssen alle Variablen bekannt sein – genau wie in Super Mario Bros. In Minecraft ist die Masse an möglichen Interaktionen oder Unbekannten so groß, dass sie zu komplex für ein Monitoring-Tool ist. Gleiches gilt für containerisierte Micro-Services, die auf Kubernetes laufen – auch diese sind unglaublich komplex.

Mit dem Aufkommen von DevOps, Micro-Services und Containern, die über mehrere Plattformen laufen, hat diese Komplexität zugenommen. Wenn eine Anfrage bei einer monolithischen Anwendung eingeht, ist sie relativ einfach zu beobachten, da sie in sich abgeschlossen ist. Wenn jedoch eine Anfrage bei einem Micro-Service eingeht, kann sie zu einer Kette von Befehlen an verschiedene andere Dienste führen. Die Lokalisierung von Problemen, die in dieser Kette auftreten, ist viel schwieriger. Observability ermöglicht es, DevOps-Teams, einschließlich Softwareentwicklern und -betreibern, Probleme zu erkennen, wo und wann sie in verteilten Systemen auftreten.

Das Ziel von Observability ist es, den internen Zustand eines komplexen Systems durch Beobachtung seiner externen Ausgaben zu verstehen. Die richtige Instrumentierung ermöglicht es, Metriken, Traces, Protokolle und Ereignisse aus einem verteilten System zu sammeln und sie über verschiedene Anwendungskomponenten und -dienste hinweg zu korrelieren. So ist es möglich, komplexe Interaktionen zwischen Elementen zu identifizieren und Leistungsprobleme zu beheben. Observability soll es erreichen, alle Daten aufzunehmen, um ein umfassendes Verständnis über das System zu erlangen. Die Folge ist ein zuverlässigeres System mit optimierter Effizienz, mit dem sich Probleme erkennen und vorhersagen lassen, bevor diese den Endbenutzer erreichen.

Frederik Bijlsma ist Senior Director Sales Central EMEA bei VMware Tanzu.

Anbieter zum Thema

zu Matchmaker+

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu VMware Global, Inc.

Weitere Artikel zu Monitoring

Weitere Artikel zu msg systems AG

Weitere Artikel zu Toshiba Mobile Communications Division

Weitere Artikel zu Avaya GmbH & Co. KG

Matchmaker+