DEVOPS

Einführung in Observability: Was ist OpenTelemetry?

Beim Einstieg in das Thema Observability gilt es, viele Variablen zu berücksichtigen, darunter auch die folgende alles entscheidende Frage: „Wie überführe ich meine Daten in ein Observability-Tool?“ Angesichts der breiten Adaption von OpenTelemetry ist diese Frage leichter denn je zu beantworten.

OpenTelemetry ist ein von der Cloud Native Computing Foundation (CNCF) entwickeltes Open-Source-Projekt mit APIs, SDKs und hilfreichen Entwickler-Tools zum Erstellen, Überwachen und Exportieren von Systemdaten (z. B. Metriken, Traces und Logs) in Observability-Lösungen am Backend, die dem Monitoring ihrer Umgebungen dienen.

Warum euch OpenTelemetry interessieren sollte?

OpenTelemetry ist komplett als Open-Source-Produkt konzipiert und kostenlos nutzbar. In der Vergangenheit waren Monitoring- und Observability-Tools stark von proprietären Agents abhängig. Änderungen an der Tool-Landschaft oder die Einrichtung zusätzlicher Tools waren daher sehr aufwendig und mit zahlreichen Änderungen in unterschiedlichen Systemen verbunden, von der Infrastruktur- bis zur Anwendungsebene. Da OpenTelemetry anbieterneutral ist und von vielen Branchenführern im Observability-Bereich unterstützt wird, sind Wechsel zwischen unterstützten Observability-Tools jederzeit mit nur geringfügigen Änderungen der Instrumentierung möglich. Dies gilt unabhängig davon, welche Distribution von OpenTelemetry zum Einsatz kommt. Genau wie bei Linux werden Einstellungen und Add-ons in den verschiedenen Distributionen gebündelt, basieren aber alle grundsätzlich auf dem OpenTelemetry-Community-Projekt.

Wie funktioniert OpenTelemetry?

OpenTelemetry besteht aus drei zentralen Komponenten: 

  • Spezifikationen: offene Standard-Protokolle, die die Grundlage von OpenTelemetry bilden, einschließlich der Implementierungsanforderungen
  • Instrumentierungsbibliotheken: die sprachenspezifischen Bibliotheken für die Implementierung von OpenTelemetry. Diese Bibliotheken benötigt ihr zur Instrumentierung eurer Anwendungen und zum Generieren der Daten, die an den OpenTelemetry Collector gesendet werden.
  • Collector: ein einzelnes Produkt, das eure Daten empfängt, verarbeitet und an die gewünschte(n) Observability-Plattform(en) am Backend weiterleitet

Zum Einstieg in OpenTelemetry müsst ihr lediglich eure Anwendung instrumentieren (entweder automatisch oder manuell) und den Collector einrichten. 

OpenTelemetry Distributionen

Da OpenTelemetry ein Open-Source-Projekt ist, tragen viele Akteure zu seiner Entwicklung bei, darunter führende Anbieter im Cloud- und Observability-Bereich. Es handelt sich um das zweitgrößte CNCF-Projekt nach Kubernetes.

Das OpenTelemetry-Projekt umfasst ein vollständiges Set von Bibliotheken und Komponenten, die zur Instrumentierung eurer Anwendungen und zum Weiterleiten eurer Daten an eine Observability-Plattform (oder auch zwei) am Backend erforderlich sind. Das Kernprojekt ist vollkommen anbieterneutral und bietet alle erforderlichen Funktionen. Um eine breitere Palette von Use Cases abzudecken und besondere Systemanforderungen zu erfüllen, können Mitglieder der OpenTelemetry-Community jedoch auch sogenannte Distributionen erstellen.

Eine Distribution ist eine benutzerdefinierte Version einer OpenTelemetry-Komponente (z. B. Collector oder Instrumentierungsbibliotheken), die nicht Bestandteil des Upstream-Projekts ist. Solche benutzerdefinierten Anpassungen an besondere Systemanforderungen können zum Beispiel einen mehr oder weniger großen Funktionsumfang, anbieterspezifische Anpassungen für Backend-Plattformen und Konfigurationsänderungen beinhalten.

Viele Observability-Anbieter bieten eigene OpenTelemetry-Distributionen an, die für den Einsatz mit ihren Produkten optimiert sind. Solche anbieterspezifischen Distributionen sind jedoch nicht zwingend erforderlich, und ihr könnt das Upstream-OpenTelemetry-Projekt weiterhin mit den wichtigsten Observability-Tools verwenden.

Jetzt fragt ihr euch vielleicht, warum ihr eine anbieterspezifische Distribution nutzen solltet, wenn diese gar nicht erforderlich ist. Distributionen können viele Vorzüge bieten. Wie bereits erwähnt können sie so konfiguriert werden, dass das Onboarding bei Backend-Plattformen bestimmter Anbieter erleichtert wird, oder zusätzliche Funktionen enthalten. Anbieter, die eigene Distributionen verwalten, bieten bisweilen auch umfassenden technischen Support für diese spezifischen Distributionen, während Upstream-Komponenten nur im Rahmen der vorhandenen Möglichkeiten Support erhalten.

Splunk Observability Cloud

Splunk Observability Cloud unterstützt den Upstream-OpenTelemetry Collector und bietet auch eine eigene Splunk-Distribution des OpenTelemetry Collector an. Darüber hinaus enthält die Dokumentation zu Splunk Observability Cloud schrittweise Anleitungen zur Instrumentierung unterschiedlicher Anwendungen, Services und Infrastrukturen mit dem Splunk OpenTelemetry Collector, außerdem Tipps und Vorschläge für die Instrumentierung mit dem Upstream-OpenTelemetry Collector.

Wenn ihr euch für die Instrumentierung mit dem Splunk OpenTelemetry Collector entscheidet, sind zusätzliche Funktionen wie Installationsskripte, Konfigurationsoptionen, Smart Agent-Funktionen sowie vordefinierte Datenvisualisierungen und Korrelationen verfügbar. Darüber hinaus wird die Splunk-Distribution des OpenTelemetry Collector bei Bedarf an technischem Support offiziell von Splunk unterstützt. 

Mehr Infos

Kostenlose Testversion von Splunk Observability Cloud

Splunk Observability Cloud bietet eine umfassende Suite von Observability-Tools, einschließlich APM, Infrastruktur-Monitoring und Real User Monitoring, sowie die Möglichkeit, bereits auf der Splunk Core-Plattform verfügbare Logdaten über Log Observer Connect zu nutzen. Wenn ihr mehr über Splunk Observability Cloud und die Instrumentierung eurer Anwendungen mit dem Splunk OpenTelemetry Collector erfahren wollt, registriert euch für eine kostenlose 14-tägige Testversion und überzeugt euch selbst.

PipeStorm

Eine weitere Möglichkeit, mehr über den OpenTelemetry-Stack zu erfahren, ist unser interaktives Spiel PipeStorm. In PipeStorm können die Spieler mehrere Instrumentierungsansätze auswählen und lernen, wie sie eine Datenpipeline mit dem OpenTelemetry Collector erstellen (einschließlich Links zu relevanter Dokumentation für jeden Prozessschritt). Probiert PipeStorm von Splunk am besten gleich aus, um OpenTelemetry näher kennenzulernen.

.conf23

Möchtet ihr persönlich mehr über Splunk und all unsere Produkte erfahren? Die Splunk-Konferenz .conf steht unmittelbar bevor. Registriert euch und erhaltet aktuelle Infos zur .conf23!

*Dieser Artikel wurde aus dem Englischen übersetzt und editiert. Den Originalblogpost findet ihr hier.

Splunk
Posted by

Splunk

TAGS
Show All Tags
Show Less Tags