Wie Sie Telemetrie des Resource Servers an die gematik schicken

Der Telemetrie-Daten Service empfängt die Selbstauskunfts- und Tracing-Daten vom TI 2.0 Dienst und kann Daten vom SIEM und Monitoring des TI 2.0 Dienst-Anbieters entgegennehmen und an die gematik Telemetriedaten Schnittstelle sowie das TI SIEM der gematik weiterleiten. Für den Empfang von Telemetrie muss ein OpenTelemetry-Receiver im Telemetry-Gateway verwendet werden. Für den Export von Telemetrie an die gematik ist bereits ein Exporter im Telemetry-Gateway vorkonfiguriert. Dieser Exporter wird sowohl für Anbieter-Telemetrie als auch ZETA-Guard-eigene Telemetrie verwendet. Verbindungen zwischen dem Telemetry-Gateway und ZETA-Guard-externen Diensten müssen über mTLS abgesichert werden.

---
title: Vereinfachtes Komponentendiagramm für den Telemetrie-Export
---
flowchart LR
    DienstAnbieterMonitoring["`**TI 2.0 Dienst Anbieter
     Monitoring**`"]
    DienstAnbieterSiem["`**TI 2.0 Dienst Anbieter
     SIEM**`"]
    Gateway["`**ZETA Guard
     Telemetry-Gateway**
     [OTelCol]
     bündelt, filtert und
     zensiert Telemetrie`"]
    gematikMonitoring["`**gematik
     Telemetriedaten
      Empfänger**`"]
    gematikSiem["`**gematik
     TI SIEM**`"]
    DienstAnbieterMonitoring -->|"`exportiert Telemetrie an
        [OTLP, mTLS]`"| Gateway
    DienstAnbieterSiem -->|"`exportiert Telemetrie an
        [OTLP, mTLS]`"| Gateway
    Gateway -->|"`exportiert Telemetrie an
        [OTLP, TLS]`"| gematikMonitoring
    Gateway -->|"`exportiert Telemetrie an
        [OTLP, TLS]`"| gematikSiem

    %% styling
    classDef KomponenteAnwendung fill: #d9e7d6, stroke:#bdd4b0;
    classDef KomponenteBestehend fill: #eeeeee, stroke: black;
    classDef KomponenteZeta fill: #fbe7cf, stroke:#debc5a;

    class Gateway KomponenteZeta;
    class DienstAnbieterMonitoring,DienstAnbieterSiem KomponenteAnwendung;
    class gematikMonitoring,gematikSiem KomponenteBestehend;

Das Telemetry-Gateway ist ein OpenTelemetry-Collector, und Sie können die offizielle Dokumentation des Collectors und seiner Module verwenden. Die im Telemetry-Gateway verfügbaren Receiver und Authenticator-Extensions können Sie im Build-Manifest des Collectors nachschlagen.

Wie Sie Telemetrie an das Telemetry-Gateway senden

Wenn Sie ZETA-Guard in einem Cluster mit einem Service-Mesh für mTLS verwenden, können Sie Telemetrie an den bestehenden OTLP-Receiver des Telemetry-Gateways exportieren. In diesem Fall ist keine Konfigurationsänderung am Telemetry-Gateway erforderlich. Sie können den OTLP-Exporter in der ConfigMap des Log-Collectors als Vorlage für ihren eigenen Exporter verwenden.

Wenn Sie kein Service-Mesh für mTLS verwenden, müssen Sie einen neuen, separaten OTLP-Receiver für das Telemetry-Gateway konfigurieren. Der Receiver muss separat sein, da er mTLS-bedingt ausschließlich Telemetrie von Ihrem Exporter empfangen kann. Das folgende Beispiel beschreibt diesen Fall. Die Konfiguration des Telemetry-Gateways erfolgt über die Values des zeta-guard Helm-Charts, und kann wie folgt aussehen:

telemetry-gateway:
    config:
        receivers:
            otlp/von-anbieter:
                protocols:
                    grpc:
                        endpoint: mysite.local:55690  # hier muss die Adresse Ihres Receivers stehen
                        tls:
                            client_ca_file: "/etc/tls/client.pem"
                            cert_file: "/etc/tls/server.crt"
                            key_file: "/etc/tls/server.key"
        service:
            pipelines:
                logs:
                    receivers:
                        - otlp/von-anbieter
                metrics:
                    receivers:
                        - otlp/von-anbieter
                traces:
                    receivers:
                        - otlp/von-anbieter
    extraVolumeMounts:
        -   name: tls
            mountPath: "/etc/tls"
            readOnly: true
    extraVolumes:
        -   name: tls
            secret:
                secretName: gematik-telemetrie-mtls  # dieses Secret müssen Sie anlegen

Dieses Beispiel verwendet einen gemeinsamen OTLP Receiver für Logs, Metriken und Traces. Die Beispielkonfiguration definiert einen neuen Receiver und fügt ihn in die bestehenden Pipelines des Telemetry-Gateways ( logs, metricsund traces) ein. Achten Sie darauf, außer dem neuen Receiver auch alle Receiver aus dem zeta-guard-Chart zu nennen, um keinen Receiver versehentlich zu deaktiviren. Das Secret gematik-telemetrie-mtls ist ebenfalls nicht Teil des zeta-guard-Helm-Charts, und muss von Ihnen mit den erforderlichen Dateien angelegt werden.

Wie Sie das Telemetry-Gateway für den Export an die gematik einrichten

Das Telemetry-Gateway ist mit einem Exporter – otlp_grpc/gematik – vorkonfiguriert, durch den Logs und Traces an die gematik exportiert werden. Der Exporter verwendet TLS statt mTLS, muss aber einen Bearer-Token an die gematik senden. Wenn Sie Workload-Identity-Federation zwischen ihrem Cluster und der gematik eingerichtet haben, wird dieses Token von dem CronJob gematik-oidc-token-renewer-cronjob erzeugt und regelmäßig erneuert, und in dem Secret gematik-oidc-token gespeichert. Das Telematik-Gateway liest dieses Secret aus, um den Bearer-Token zu erhalten.

Wie Sie Workload-Identity-Federation zwischen ihrem Cluster und der gematik einrichten, wird hier aus organisatorischer Perspektive beschrieben. Nachdem Sie Ihren ZETA-Cluster registriert haben, müssen Sie ZETA-Guard für die Authentifizierung gegen die gematik konfigurieren. Die erforderliche Konfiguration erhalten Sie von der gematik. Die Values für den ZETA-Guard-Chart sehen so aus:

gematik:
    serviceAccountEmailAddress: "ToDo"
    workloadIdentityFederation:
        poolId: "ToDo"
        projectNumber: "ToDo"
        workloadIdentityProvider: "ToDo"
opa:
    workloadIdentityFederation:
        sts:
            sa: "ToDo"

This site uses Just the Docs, a documentation theme for Jekyll.