Best Practice

Observability: Systemtransparenz durch Design

Reply teilt seine Best Practices aus dem Bereich Observability (Beobachtbarkeit) und bietet damit einen ganzheitlichen Ansatz für die Systemüberwachung. Dieser umfasst die Integration von Observability-Plattformen und den Aufbau von ausgereiften Observability-Teams.

Verteilte Systeme und niedrige Vorhersehbarkeit fordern Observability

Mit der zunehmenden Verbreitung von verteilten Systemen, Containern und Mikrodiensten in modernen Unternehmen wird es immer wichtiger, das Verhalten des gesamten Systems zu beobachten. Herkömmliche Überwachungsansätze können den notwendigen Grad der Introspektion nicht erreichen. Dieser ist jedoch erforderlich, um die Zeit für die Erkennung, Reparatur und Korrektur des Verhaltens zu verkürzen. Zudem gelingt es ihnen nicht, ihren Fokus im erforderlichen Maße zu erweitern und die potenziellen Auswirkungen von Vorfällen auf die Benutzererfahrung zu berücksichtigen.

Picture

Von der „Black Box“ zur „White Box“

Eine wesentlicher Vorteil neuerer Observability-Modelle ist die Berücksichtigung des Überwachungsansatzes. Vorher wurde ein System als „Black Box“ mit unzugänglichem internen Inhalt betrachtet. Daher konzentrierte sich die Überwachung auf Signale und offensichtliche Auswirkungen, die außerhalb der Box erfasst und bewertet werden konnten. Nun liegt das Ziel jedoch darin, diese Box vollständig transparent, also zu einer „White Box“ zu machen, bei der ein Blick ins Innere des Systems möglich ist.

Die drei Säulen der Observability

Für die Observability sind vor allem drei Datentypen relevant. Diese müssen mit Hilfe von Tools verarbeitet werden, die Daten auf sinnvolle Weise erfassen, korrelieren und darstellen können. Zudem sollte eine Plattform verwendet werden, die für alle Beteiligten einfach zu konfigurieren und zu verwenden ist.

Protokolle

Mit einem Zeitstempel versehene, unveränderliche Aufzeichnungen der diskreten Ereignisse, die im Zeitverlauf in einer Softwareumgebung aufgetreten sind.

Metriken

Numerische Darstellungen der verschiedenen Aspekte zum Systemzustand.

Spuren

Darstellungen von Ereignissen und deren kausalen Beziehungen im Ende-to-Ende-Flow einer Anfrage in einem verteilten System.

Wichtige Faktoren, die zu berücksichtigen sind

Picture

Eine Observability-Plattform


Grundlegend für die Entwicklung eines robusten Observability-Konzeptes ist die Wahl einer effektiven Observability-Plattform. Diese muss dazu in der Lage sein, über ein einziges Tool rohe und heterogene Daten aus verschiedenen Quellen zu erfassen und zu verarbeiten, sie in eine (oder mehrere) der drei Säulen der Observability umzuwandeln und allen Beteiligten nützliche Informationen über Dashboards und Warnmeldungen bereitzustellen. Wir nennen diese Plattform die „einzige Quelle der Wahrheit“.

Picture

Integration mit DevOps


Genau wie bei DevOps gilt es bei ganzheitlicher Observability, die Beobachtbarkeit in allen Designphasen zu berücksichtigen: bei der Analyse und dem Entwurf einer neuen Anwendung, bei der Implementierung und den Tests sowie bei der Leistungsüberwachung. Die durchgängige Berücksichtigung von Observability über den gesamten Software-Lebenszyklus hinweg reduziert den Zeitaufwand für die Ermittlung von Untersuchungsschwerpunkten.

Picture

Der menschliche Faktor


Ein ganzheitlicher Observability-Ansatz erfordert auch ein spezielles Observability-Team, dessen Struktur je nach den Ressourcen und der Organisation des Unternehmens variieren kann. Im Allgemeinen unterstützen diese Teams die Einrichtung der Observability-Plattform, bewerten das System, sammeln Rückmeldungen und aktualisieren und evaluieren die Anwendung der Leitlinien und Grundsätze der Observability.

Die Rolle von „Site Reliability Engineering“ (SRE)

Reliability-Ingenieure schaffen einen zuverlässigeren Aufbau und skalierbare Systeme, indem sie Verwaltungsaufgaben automatisieren. So können Sie sich auf höhere Prioritäten konzentrieren , z. B. darauf, Fehlerquellen oder Möglichkeiten zur Verbesserung der Infrastruktur zu ermitteln. SRE und Observability arbeiten zusammen, um den menschlichen Aufwand, menschliche Fehler und menschliche Latenz zu reduzieren.

Sie ergänzen einander, wobei die SRE-Teams Vorschläge für relevante zu beobachtende Elemente unterbreiten und die Observability-Teams dafür sorgen, dass diese beobachtbar gemacht werden und dass die entsprechenden Daten allen Beteiligten zur Verfügung gestellt werden. Dabei stimmen sie sich zusätzlich mit den Geschäfts- und DevOps-Teams ab, um sicherzustellen, dass Observability in den Entwicklungsphasen berücksichtigt wird.

Picture

Unsere Erfahrung mit Observability

Die Expertise von Reply stützt sich auf umfangreiche und einschlägige Erfahrung in verschiedenen Industriesektoren. So haben wir einzigartige Einblicke, die es uns ermöglichen, Unternehmen bei der Auswahl, Gestaltung und Implementierung zuverlässiger Observability-Plattformen zu unterstützen. Diese Lösungen berücksichtigen selbstverständlich alle Bedürfnisse unserer Kunden.