Was ist Beobachtbarkeit?

URL kopieren

Beobachtbarkeit beschreibt die Fähigkeit, den Zustand eines Systems oder einer Anwendung zu überwachen, zu messen und zu verstehen, indem Output, Logs und Performance-Metriken untersucht werden. In modernen Softwaresystemen und im Cloud Computing spielt Beobachtbarkeit eine zunehmend wichtigere Rolle darin, die Zuverlässigkeit, Performance und Sicherheit von Anwendungen und Infrastruktur sicherzustellen.

Die Bedeutung der Beobachtbarkeit hat aufgrund der gestiegenen Komplexität von Softwaresystemen, der weit verbreiteten Einführung von Microservices sowie der zunehmenden Abhängigkeit von verteilten Architekturen zugenommen.

Die Beobachtbarkeit beinhaltet und erweitert klassische Überwachungssysteme und unterstützt Teams dabei, die Ursachen für Probleme zu finden. Sie ermöglicht es Stakeholdern, Fragen zu ihrer Anwendung und ihrem Geschäft zu beantworten sowie Prognosen und Vorhersagen über mögliche Probleme zu treffen. Eine diverse Sammlung von Tools und Technologien werden verwendet, was zu einer großen Matrix an möglichen Deployments führt. Das hat Auswirkungen auf die Architektur, weshalb Teams wissen müssen, wie sie ihre Beobachtbarkeitssysteme in einer für sie geeigneten Art und Weise einrichten.  

Künstliche Intelligenz und maschinelles Lernen

Künstliche Intelligenz (KI) und maschinelles Lernen (ML) werden immer häufiger in Beobachtbarkeitsplattformen verwendet, um automatisierte Anomalieerkennung, Ursachenanalyse und prädikative Insights zu generieren. Aufgrund dieser Technologien bedarf es weniger Zeit und Aufwand, um diese Probleme in komplexen Systemen zu identifizieren und zu lösen.

Hybrid Cloud- und Multi-Cloud-Umgebungen

Unternehmen verfolgen zunehmend Hybrid Cloud- und Multi-Cloud-Strategien, weshalb Tools für die Beobachtbarkeit einen Einblick in die gesamte Infrastruktur ermöglichen müssen, unabhängig davon, wo Anwendungen und Services bereitgestellt werden.

Edge-Geräte

Das zukünftige Wachstum von Edge-Geräten, IoT-Geräten (Internet of Things) oder anderen lokalen Computing-Geräten wird zu neuen Herausforderungen hinsichtlich Überwachung und Verwaltung dieser Umgebungen führen. Sie müssen Echtzeit-Insights und schnelle Reaktionszeiten bieten. Dafür müssen möglicherweise schlanke Agenten für die Datensammlung kreiert, edge-freundliche Datenformate und -protokolle verwendet und dezentralisierte Datenverarbeitungs- und Datenanalysetechniken miteinbezogen werden, wobei robuste Sicherheits- und Datenschutzfunktionen erhalten bleiben sollten.

Beobachtbarkeit in DevOps

Mit der zunehmenden Bedeutung von Beobachtbarkeit für die Zuverlässigkeit und Performance cloudnativer Anwendungen liegt ein größeres Augenmerk auf der Beobachtbarkeit im DevOps-Prozess. Dieser beinhaltet die Integration von Beobachtbarkeits-Tools in die DevOps-Toolchain sowie die Verwendung von Beobachtbarkeitsdaten, um die durchgehende Verbesserung von Anwendungsperformance und -zuverlässigkeit voranzutreiben.

Zunehmende Verwendung von quelloffenen Beobachtbarkeits-Tools

Open Source-Beobachtbarkeits-Tools wie Grafana, Jaeger, Kafka, OpenTelemetry und Prometheus erfreuen sich in den letzten Jahren zunehmender Beliebtheit. Ein Trend, der wahrscheinlich anhalten wird. Dies wird teilweise von dem Wunsch ausgelöst, die Kosten zu reduzieren, die mit proprietären Beobachtbarkeits-Tools einhergehen. Andere Gründe sind die Flexibilität und Anpassungsfähigkeit von Open Source-Tools.

Zunehmende Einführung cloudnativer Infrastruktur

Immer mehr Organisationen führen cloudnative Infrastrukturen ein, weshalb die Nachfrage nach speziell für diese Umgebungen designten Beobachtbarkeits-Tools wahrscheinlich zunehmen wird. Aufgrund der wachsenden Datenmengen, die von cloudnativen Anwendungen und der Infrastruktur generiert werden, gewinnen ML und KI im cloudnativen Beobachtbarkeits-Bereich zunehmend an Bedeutung. Diese Technologien helfen dabei, Anomalien und Leistungsprobleme zu identifizieren, bevor diese sich auf Endbenutzende auswirken können. Das bedeutet, dass Unternehmen proaktiv Störungen beheben können, bevor diese für signifikante Probleme sorgen.

Verbesserte Zuverlässigkeit

Identifizieren und lösen Sie Probleme, bevor sich diese ausweiten, minimieren Sie Ausfallzeiten und stellen Sie sicher, dass Systeme für Nutzerinnen und Nutzer verfügbar bleiben.

Effiziente Fehlerbehebung

Identifizieren Sie schnell die Ursache von Problemen und lösen Sie diese effizient mit detaillierten Insights in das Verhalten eines Systems.

Optimierte Performance

Identifizieren Sie Optimierungsmöglichkeiten, wie etwa Engpässe im System oder nicht ausreichend ausgelastete Ressourcen, um eine effizientere Ressourcenzuweisung und verbesserte Performance zu erreichen.

Datengestützte Entscheidungsfindung

Erhalten Sie aktuelle Informationen über Systemperformance und -verhalten, wodurch eine datengestützte Entscheidungsfindung und kontinuierliche Verbesserungen ermöglicht werden.

Beobachtbarkeit und Überwachung sind verwandte Konzepte, die sich jedoch in einigen Merkmalen unterscheiden. Beobachtbarkeit bezeichnet die Fähigkeit, Fragen über Ihr System stellen zu können, indem Sie sein Verhalten von außen beobachten.

Immer mehr Organisationen führen eine cloudnative Infrastruktur ein, weshalb die Nachfrage nach speziell für diese Umgebungen designten Beobachtbarkeits-Tools wahrscheinlich zunehmen wird. Cloudnative Beobachtbarkeits-Tools wurden dafür entwickelt, Daten von Microservices, Containern und anderen cloudnativen Technologien zu sammeln und zu analysieren sowie Insights über die System-Performance in diesen Umgebungen zu liefern.

Zusammengefasst lässt sich sagen, dass cloudnative Beobachtbarkeit die Praxis der Überwachung, Analyse und Fehlerbehebung moderner, cloudnativer Anwendungen beschreibt, welche mit Microservices-Architekturen entwickelt wurden und in Containern oder serverlosen Umgebungen bereitgestellt werden. Die Säulen der cloudnativen Beobachtbarkeit bestehen üblicherweise aus:

Metriken: Fokus auf das Sammeln quantitativer Daten über Ihre Kubernetes-Umgebung und -Anwendungen. Metriken können Daten wie etwa CPU- und Arbeitsspeichernutzung, Netzwerkverkehr und Reaktionslatenzzeiten beinhalten. Kubernetes bietet eine Reihe integrierter Metriken, für detailliertere Metriken müssen Sie möglicherweise auf zusätzliche Tools oder Libraries zurückgreifen.

Logs: Fokus auf das Sammeln und Analysieren von Logdaten Ihrer Kubernetes-Umgebung und -Anwendungen. Logs können wertvolle Insights in das Verhalten Ihrer Anwendungen liefern und können dazu verwendet werden, Fehler zu beheben, Leistungsengpässe zu identifizieren und Sicherheitsbedrohungen aufzuspüren.

Traces: Fokus auf das Sammeln von Daten über die Ausführung von Anfragen oder Transaktionen in Ihrer Kubernetes-Umgebung oder -Anwendungen. Traces unterstützen Sie dabei, Leistungsprobleme zu identifizieren, die Performance Ihrer Anwendungen zu optimieren und zu verstehen, wie Anfragen oder Transaktionen von Ihren Anwendungen verarbeiten werden.

Events: Fokus auf das Sammeln von Daten über wichtige Events, die in Ihrer Kubernetes-Umgebung stattfinden, wie etwa Anwendungsbereitstellungen, Skalierungsevents sowie Fehler. Mit Events können Sie den Zustand Ihrer Kubernetes-Umgebung überwachen und auftretende Probleme schnell lösen.

Beobachtbarkeit ist ein wichtiger Faktor für SRE (Site Reliability Engineering) und DevOps, da sie die zuverlässige und effiziente Ausführung von Systemen sicherstellt. Die Bedeutung von Beobachtbarkeit liegt in ihrer Fähigkeit, detaillierte Insights in die Leistung und das Verhalten eines Systems zu geben, wodurch eine proaktive Überwachung, Fehlerbehebung und Optimierung ermöglicht werden. 

Site Reliability Engineers, Entwicklungs- und Operations-Teams müssen gewisse Schritte durchlaufen, um mithilfe von Beobachtbarkeitsdaten Fehler in einem Softwaresystem zu identifizieren, zu analysieren und zu beheben. Dieser Prozess wird auch als „Debug Journey“ bezeichnet.

Zuerst wird das Problem festgestellt, indem es in der Überwachung, durch Alarme oder von Nutzenden gemeldet wird.

Sobald es festgestellt wurde, muss das Team den Schweregrad bestimmen und es priorisieren. In diesem Selektierungsprozess werden die Auswirkungen auf Nutzende, Systeme und allgemeine Performance bestimmt.

Für priorisierte Items müssen die gesammelten Beobachtbarkeitsdaten untersucht werden, um Muster und Korrelationen zu finden.

Nachdem potenzielle Korrelationen und Muster identifiziert wurden, nimmt das Team die Daten genauer unter die Lupe, um die Ursache des Problems zu finden.

Wenn die Ursache identifiziert wurde, kann eine Problembehebung durch einen Hotfix, eine Änderung des Codes oder eine Anpassung der Infrastruktur implementiert werden. Das Team überwacht weiterhin das System, um zu überprüfen, dass die Problembehebung erfolgreich war.

Beobachtbarkeit für DevOps und SRE erfordert eine Kombination von Tools, Prozessen und Fachwissen, um Systeme effizient überwachen, optimieren und Probleme in diesen beheben zu können. Sie ist ein wichtiger Faktor, der es Unternehmen ermöglicht, ihren Kunden und Kundinnen qualitativ hochwertige digitale Services bereitzustellen. Red Hat OpenShift Observability liefert Ihnen die Informationen, die Sie für die Entwicklung einer System-Baseline benötigen. Anschließend können Sie Abweichungen von dieser Baseline überwachen und sich über diese benachrichtigen lassen, was zu einer kürzeren MTTD (Mean Time To Detection) und MTTR (Mean Time To Resolution) führen kann.

Red Hat® OpenShift® Observability löst die Komplexität moderner Architektur, indem es Beobachtbarkeits-Tools und -Technologien zu einem vereinheitlichten Beobachtbarkeits-Erlebnis verknüpft. Die Plattform bietet Echtzeittransparenz, -überwachung und -analyse verschiedener Systemmetriken, Logs, Traces und Events, damit Nutzerinnen und Nutzer Probleme schnell finden und lösen können, bevor diese eine Auswirkung auf Anwendungen oder Endbenutzende haben können.

Die Beobachtbarkeitsfunktionen von Red Hat OpenShift können die Leistung und Zuverlässigkeit Ihrer Cloudanwendungen verbessern. Red Hat OpenShift hilft Ihnen dabei, Probleme zu identifizieren, bevor diese sich auf Ihre Kunden und Kundinnen auswirken, sowie Ihre Infrastruktur zu optimieren und Kosten zu reduzieren, indem es Daten von Ihren Anwendungen sammelt und analysiert. Weiterhin erhalten Sie dadurch ein besseres Verständnis vom Verhalten Ihrer Anwendungen und die Möglichkeit zur proaktiven Fehlerbehebung. Diese Funktionen ermöglichen Nutzenden tiefe Einblicke in die Performance und den Zustand ihrer OpenShift-basierten Anwendungen und Infrastruktur für beliebige Footprints: in der Public Cloud, On-Premise und am Netzwerkrand.

Die Plattform bietet Echtzeittransparenz, -überwachung und -analyse verschiedener Systemmetriken, Logs, Traces und Events, damit Nutzerinnen und Nutzer Probleme schnell finden und lösen können, bevor diese eine Auswirkung auf Anwendungen oder Endbenutzende haben können.

Die fünf Säulen von Red Hat OpenShift Observability

Datenspeicherung

Speichern Sie die von verschiedenen Beobachtbarkeits-Tools und -Plattformen generierten Daten, wie etwa Logs, Metriken und Traces an einem zentralen Ort, um sie zu analysieren und zu überwachen. Die Speicherung dieser Daten ist entscheidend für Unternehmen, die mithilfe dieser Tools Insights in die Performance ihrer Systeme gewinnen, Abläufe optimieren und Fehler aufspüren und diagnostizieren. Red Hat OpenShift Observability speichert Metriken mit Prometheus und Thanos, Logs mit Loki, und Traces mit Jaeger und Elasticsearch.

Datensammlung

Sammeln Sie verschiedene Datentypen, darunter Logs, Metriken und Traces, von verschiedenen Quellen innerhalb eines Systems, Netzwerks oder einer Anwendung und senden Sie diese zur Analyse und Überwachung an einen zentralen Speicherort. Red Hat OpenShift Observability sammelt Metriken mit Prometheus, Logs mit Vector, und Traces mit OpenTelemetry.

Datenanalyse

Analysieren und interpretieren Sie die Daten, die Sie von unseren Beobachtbarkeitssäulen gesammelt haben, um Insights in das Verhalten und die Performance eines Systems, Netzwerks oder einer Anwendung zu erhalten. Dieser Prozess beinhaltet die Anwendung von Datenanalyse-Techniken, um Trends, Anomalien und Korrelationen innerhalb der Daten zu identifizieren. Red Hat OpenShift Observability führt Datenanalysen durch und präsentiert diese nativ innerhalb der Konsole von Red Hat OpenShift.

Datenbereitstellung

Leiten Sie die von den Beobachtbarkeitssäulen gesammelten Daten schnell und effizient an betroffene Stakeholder weiter. Dieser Prozess beinhaltet die Definition von Datenbereitstellungs-Workflows, die Konfiguration von Bereitstellungskanälen sowie die Einrichtung von Alarmen und Benachrichtigungen, die sicherstellen, dass relevante Stakeholder über auftretende Probleme informiert werden.In Red Hat OpenShift Observability bietet der Observability Operator die Funktion, Daten zu aggregieren und zu normalisieren und diese für Benachrichtigungen vorzubereiten.

Datenvisualisierung

Präsentieren Sie die von den Beobachtbarkeitssäulen gesammelten Daten in einem visuellen Format, das leicht zu verstehen und zu interpretieren ist. Red Hat OpenShift Observability verwendet Diagramme, Grafiken und Dashboards, die in die Konsole von Red Hat OpenShift integriert sind, um Daten so zu präsentieren, dass Nutzende schnell Muster, Trends und Anomalien in ihren Daten identifizieren können.

Beobachtbarkeit in den Angeboten von Red Hat

Eine Plattform, die es Ihnen ermöglicht, Unternehmensanwendungen schnell und effizient über die von Ihnen gewünschte Infrastruktur bereitzustellen.

Red Hat Advanced Cluster Management for Kubernetes Logo

Red Hat Advanced Cluster Management for Kubernetes umfasst Funktionen, mit denen Sie das Multi-Cluster-Management vereinheitlichen, richtlinienbasierte Governance bereitstellen, das Application Lifecycle Management erweitern sowie proaktiv Cluster-Health- und Performance-Monitoring durchführen können.

Red Hat Insights analysiert durchgehend Plattformen und Anwendungen, um Risiken vorherzusehen, Handlungsweisen vorzuschlagen und Kosten zu verfolgen, damit Unternehmen Hybrid Cloud-Umgebungen besser verwalten können.

Software wird immer komplexer, weshalb mehr Ressourcen benötigt werden, um zuverlässige Instrumentierungskomponenten bereitzustellen. Bei proprietären Beobachtbarkeitsprodukten führt dieser Trend zu Ineffizienz und Duplizierung. Der Markt hat einen Wendepunkt erreicht, und für konkurrierende Unternehmen wird es effizienter, gemeinsam an einem Open Source-Kern zu arbeiten und den Wettbewerb weiter oben im Stack (und in der Preisgestaltung) stattfinden zu lassen. Bei so vielen Open Source-Projekten im Bereich Beobachtbarkeit können Operatoren uneinheitlich und unverbunden sein, was Nutzende davon abhält, einen einheitlichen Stack zu kreieren. Red Hat OpenShift Observability löst dieses Problem, indem es die Vielzahl an quelloffenen Beobachtbarkeitsoperatoren vernetzt und sie zusammenarbeiten lässt, um ein einheitliches Beobachtbarkeitserlebnis zu erschaffen.Red Hat möchte seinen Kunden Auswahl und Flexibilität in der Open Hybrid Cloud anbieten. Dies zeigt sich auch an unseren Beiträgen zu den von uns verwendeten Open Source-Projekten im Bereich Beobachtbarkeit, die dazu führen, dass Open Source-Komponenten für die Community verbessert werden. Red Hat bietet ein einziges, einheitliches, konsistentes und vereinfachtes Beobachtbarkeitserlebnis auf beliebigen Footprints, darunter Public Cloud, On-Premise und am Netzwerkrand.

Weiterlesen

Artikel

Was ist maschinelles Lernen?

Maschinelles Lernen (ML) ist eine Unterkategorie der künstlichen Intelligenz (KI). Dabei werden Algorithmen verwendet, um innerhalb eines Datensatzes Muster zu erkennen und Vorhersagen zu treffen. 

Artikel

Container

Container sind Technologien, mit denen Sie Anwendungen mit ihrer gesamten Runtime-Umgebung – d. h. mit den für den Betrieb notwendigen Dateien – paketieren und isolieren können.

Artikel

Was ist Kubernetes?

Kubernetes ist eine Container-Orchestrierungsplattform auf Open Source-Basis, mit der viele manuelle Prozesse automatisiert werden können, die mit dem Deployment, dem Management und der Skalierung von containerisierten Anwendungen einhergehen.