Elastic Common Schema und OpenTelemetry – Ihr Weg zu mehr Observability und Sicherheit ohne Anbieterbindung

ecs-otel-announcement-1.jpeg

Auf der KubeCon Europe wurde bekanntgegeben, dass OpenTelemetry (OTel) das Elastic Common Schema (ECS) als Projektbeitrag akzeptiert hat. Das Ziel ist eine Zusammenführung der semantischen Konventionen (SemConv) von ECS und OpenTelemetry zu einem einzigen offenen Schema, das von OpenTelemetry gepflegt wird. Diese FAQ befassen sich mit dem Beitrag, den Elastic mit dem Elastic Common Schema zu OpenTelemetry geleistet hat, den Vorteilen eines gemeinsamen Schemas für die Branche und den Auswirkungen auf Observability und Sicherheit.

Was genau wurde angekündigt? 

Elastic stellt das Open-Source-Projekt Elastic Common Schema (ECS) als Beitrag für das OpenTelemetry-Projekt der Cloud Native Computing Foundation (CNCF) bereit, um ein gemeinsames Schema für Observability- und Sicherheitsdaten zu bilden. Ein gemeinsames Schema vereinfacht die Normalisierung von Daten, um Analyse, Visualisierung und Korrelation der Daten in beliebigen Observability- und Sicherheitsplattformen zu erleichtern. Mit der Annahme des ECS durch OpenTelemetry erhält die OTel-Nutzer-Community ein ausgereiftes und erprobtes gemeinsames Schema für Metriken, Logs, Traces, Ressourcen (Hosts, Container usw.) und Sicherheitsereignisse. 

Was müssen die Elastic-Nutzer wissen?

Elastic wird die Investitionen unserer Nutzer in das ECS schützen. Mit der fortlaufenden Weiterentwicklung des ECS in OpenTelemetry erhalten die Nutzer einen klaren Weg zur Einführung des in Zukunft hoffentlich meistverwendeten Standards für semantische Konventionen.

Elastic beteiligt sich an der OTel-Community und arbeitet eng mit ihr zusammen, um die semantischen Konventionen von ECS und OpenTelemetry im Lauf der Zeit korrekt zusammenzuführen. Elastic wird auch weiterhin Nutzerdaten im aktuellen ECS-Format unterstützen, aber die Weiterentwicklung wird im neu zusammengeführten Schema erfolgen. Elastic-Nutzer können entweder das aktuelle („eingefrorene“) ECS-Format ingestieren und verwenden oder zum neuen Schema migrieren.

Elastic stellt Anleitungen und Tools für eine einfache Migration für Nutzer bereit, die sich zur Migration auf das neue Schema entschließen.

Warum stellt Elastic das ECS als Beitrag zu OTel bereit?

Mit der Zusammenführung der semantischen Konventionen (SemConv) von OpenTelemetry und Elastic Common Schema entsteht ein gemeinsames Benennungsschema für Ressourcen, Metriken, Logs, Traces, Sicherheitsereignisse und Audit-Ereignisse, das in vielfältigen Codebases, Bibliotheken und Plattformen verwendet werden kann. Die Zusammenführung der semantischen Konventionen von ECS und OTel bietet die folgenden Vorteile:

  • Vereinte Kräfte für einen einzigen Standard, der von Produzenten von Ereignisdaten umfassend eingesetzt werden kann
  • Mehr Sichtbarkeit und bessere Ursachenanalysen für Betriebsabläufe
  • Anbieter und die Community können sich auf umfangreichere Observability- und Sicherheitsfeatures konzentrieren, anstatt Zeit mit Datentransformationen zu verlieren.
  • Vereinfachung unternehmensübergreifender Analysen für vielfältige Signaltypen, etwa zwischen Sicherheit und Observability
  • Stärkere Nutzung von OpenTelemetry und fortlaufende Weiterentwicklung und Zusammenführung der Observability- und Sicherheitsbereiche

Warum brauchen Unternehmen ein gemeinsames Schema?

Zu viele Unternehmen tun sich schwer damit, herauszufinden, wann (Sichtbarkeit) und warum (Ursachenanalyse) ein Problem aufgetreten ist. Diese betriebliche Herausforderung entsteht dadurch, dass Daten in Silos aufbewahrt und mit unterschiedlichen Schemas strukturiert werden. Die Unternehmen verbringen mehr Zeit mit unnötigen Datentransformationen als mit Problem- und Ursachenanalysen und der Optimierung von Betriebsabläufen.

Wenn die Daten mit einem gemeinsamen Schema strukturiert werden, können sich Betriebsteams darauf konzentrieren, Probleme zu erkennen, zu beheben und zu vermeiden und die mittlere Behebungsdauer (MTTR) zu reduzieren. Außerdem können Betriebskosten eingespart werden, wenn Daten nicht dupliziert werden und nicht zur Normalisierung verarbeitet werden müssen. 

Welche Beispiele gibt es für ein gemeinsames Schema?

Ein einfaches anschauliches Beispiel ist eine Client-IP-Adresse, die von mehreren Quellen gesendet wird, die jeweils Telemetrie für den Client überwachen oder verwalten. Die Observability-Plattform empfängt diese Informationen in unterschiedlichen Formaten:

src:10.42.42.42
client_ip:10.42.42.42 
apache2.access.remote_ip: 10.42.42.42 
context.user.ip:10.42.42.42 
src_ip:10.42.42.42

Unterschiedliche Darstellungen für IP-Adressen erhöhen die Komplexität, wenn potenzielle Probleme analysiert oder auch nur identifiziert werden sollen. Ohne eine klare Semantik für beobachtete Daten und ohne gemeinsames Schema können Observability-Lösungen die Daten nur mit großer Mühe korrelieren, analysieren und Ursachen daraus ableiten. Betriebsteams (SRE, DevOps usw.) müssen also diese unterschiedlichen Definitionen kennen und in der Lage sein, sie zu finden und anschließend für ihre Analysen manuell zu normalisieren.

Mit einem gemeinsamen Schema werden alle Daten in einem standardisierten Format empfangen. Im obigen Beispiel identifizieren alle Quellen die IP-Adresse des Clients auf dieselbe Weise:

source.ip:10.42.42.42

Observability- und Sicherheitslösungen können jetzt ein einheitlich definiertes Datenschema verwenden, um Korrelation und Analyse der Daten zu automatisieren. Betriebsteams haben mehr Zeit, um das Problem zu verstehen, Ursachen zu ermitteln und Betriebsabläufe zu optimieren, anstatt Zeit mit unnötigen Datentransformationen zu verbringen.

Was ist das Elastic Common Schema (ECS)?

Das Elastic Common Schema (ECS) ist eine Open-Source-Spezifikation (Apache 2.0) und wurde mit Unterstützung von der Elastic-Nutzer-Community entwickelt, um eine gemeinsame Reihe an Feldern für die Speicherung von Ereignisdaten in Elasticsearch zu definieren. Das ECS hat das Ziel, die Elasticsearch-Nutzer in die Lage zu versetzen und dazu zu ermutigen, ihre Ereignisdaten zu normalisieren, um die in den Ereignissen dargestellten Daten besser analysieren, visualisieren und korrelieren zu können. Das ECS dient als Basis für die Observability- und Sicherheitslösungen von Elastic und ist ein erprobtes und weithin eingesetztes Schema, das seit der Einführung im Jahr 2019 ständig weiterentwickelt wurde und gewachsen ist.

Was ist OpenTelemetry und was sind die semantischen Konventionen von OpenTelemetry?

OpenTelemetry (OTel) ist ein Open-Source-Projekt und stellt eine Sammlung an Spezifikationen, Tools, APIs und SDKs bereit, mit denen die Nutzer Telemetriedaten (Metriken, Logs und Traces) generieren, erfassen, verarbeiten und exportieren können, um die Leistung und das Verhalten ihrer Software besser zu verstehen. OpenTelemetry ist das Projekt mit der zweithöchsten Geschwindigkeit im gesamten CNCF-Ökosystem.

Die semantischen Konventionen (SemConv) von OpenTelemetry definieren gemeinsame Namen für verschiedene Arten von Operationen und Daten. Die SemConv von OpenTelemetry bieten den Vorteil, dass sie einem gemeinsamen Benennungsschema folgen, das die OTel-Endnutzer in vielfältigen Codebases, Bibliotheken und Plattformen standardisieren können. Ein weiterer wichtiger Vorteil ist die Entkopplung von anbieterspezifischen Semantikregeln. Mit den SemConv von OpenTelemetry können die Nutzer also ihre Daten von der Anbieterbindung befreien. Auf diese Weise können sie mühelos zwischen Observability-Lösungen (und Sicherheitslösungen im Rahmen des ECS-Beitrags) wechseln, ohne ihre Datensammlung anpassen zu müssen.

Welche Vorteile hat der ECS-Beitrag für OpenTelemetry?

Das wichtigste Ziel von OpenTelemetry besteht darin, die Definition eines Schemas zum Beschreiben von Log- und Sicherheitsereignissen zu beschleunigen. Die ECS-Beitragenden haben bereits eine Reihe von einheitlichen und weithin akzeptierten semantischen Konventionen für Logging-Anwendungen definiert, die in OTel übernommen werden können. ECS wird umfangreich eingesetzt, um die für Observability- und Sicherheitsanwendungsfälle erfassten Logs zu strukturieren.

Durch den Zusammenschluss wird die Integration zwischen den von Anbietern erstellten Logs und den Logs der OTel-Komponenten (z. B. Empfänger und Prozessoren für OTel Collector Logs) beschleunigt. Das Ziel besteht darin, anbieterunabhängige semantische Konventionen für beliebte Systeme zu definieren und von Anbietern erstellte oder Open-Source-Komponenten zu unterstützen (z. B. HTTP-Zugriffs-Logs, Netzwerk-Logs, Systemzugriffs-/Authentifizierungs-Logs) und die OTel-Korrelation um diese neuen Signale zu erweitern. Die Nutzer erhalten außerdem sofort einsatzbereite Log-Integrationen, die von OTel-kompatiblen Observability- und Sicherheitsprodukten und -Diensten umfassend erkannt werden. 

Die Ausgereiftheit von ECS for Security bietet eine herausragende Chance, um mit OpenTelemetry erfassten Daten für noch besser für Anwendungsfälle im Sicherheitsbereich nutzen zu können. OTel-Produzenten können ECS integrieren, um Sicherheitsereignisse zu strukturieren.

Wird sich an der Lizenzierung für ECS irgendetwas ändern?

Die ECS-Lizenzierung bleibt unverändert. ECS verwendet die Apache 2.0-Lizenz, genau wie OpenTelemetry.

Unterstützt Elastic OpenTelemetry schon jetzt?

Elastic unterstützt OTel nativ. Elastic-Nutzer können OTel-Daten direkt aus Anwendungen oder über den OTel-Collector an Elastic APM senden und OTel SemConv sowie ECS dort verarbeiten. Mit dieser nativen OTel-Unterstützung sind sämtliche Elastic APM-Funktionen für OTel verfügbar. In der Elastic-Dokumentation erfahren Sie mehr über die OTel-Integration.

Elastic OTel Microservices