Architekturuebersicht

Version: 1.0 Datum: 2026-02-10 Autor: IceDataEmphasise Team Klassifikation: INTERN

Revisionshistorie

Version Datum Autor Beschreibung
1.0 2026-02-10 IceDataEmphasise Team Initiale Erstellung der Architekturuebersicht

Inhaltsverzeichnis

  1. Systemuebersicht und Zielsetzung
  2. Komponentendiagramm
  3. Netzwerktopologie
  4. Datenfluss
  5. Sizing und Ressourcenbedarf
  6. Lizenzmodell
  7. RACI-Matrix

1. Systemuebersicht und Zielsetzung

1.1 Projektziel

Das Projekt IceDataEmphasise evaluiert Cribl Stream und Cribl Edge als moderne Alternative zu Splunk Universal Forwardern (UF) fuer den Einsatz in einer regulierten deutschen Bankumgebung. Ziel des Proof of Concept (PoC) ist die Validierung folgender Aspekte:

1.2 Warum Cribl statt Splunk Universal Forwarder?

Kriterium Splunk UF Cribl Stream + Edge
Datentransformation Begrenzt (props.conf/transforms.conf) Vollstaendige Pipeline-Engine mit JavaScript
Routing Nur zu Splunk-Indexern Multi-Destination (Splunk, S3, Kafka, etc.)
Volumenreduktion Nicht moeglich Bis zu 50% durch Aggregation und Filterung
Quellen-Vielfalt Datei-basiert, Syslog Datei, Journald, Syslog, HTTP, Kafka, etc.
Zentrales Management Deployment Server erforderlich Integriertes Fleet Management
Lizenzkosten Im Splunk-Lizenzvolumen Free Tier: 1 TB/Tag, 100 Edge Nodes

1.3 Scope des PoC

Der PoC wird auf einem Intel NUC durchgefuehrt, der gleichzeitig als Home-Assistant-Server dient. Es werden 12 Log-Quellen ueber Cribl Edge gesammelt, durch Cribl Stream verarbeitet und an eine externe Splunk-Instanz weitergeleitet.

2. Komponentendiagramm

2.1 Uebersicht der Systemkomponenten


  +=========================================================================+
  |                        Intel NUC (Debian Linux)                         |
  |                                                                         |
  |  +---------------------------+    +----------------------------------+  |
  |  |     Cribl Edge            |    |        Cribl Stream              |  |
  |  |     /opt/cribl-edge       |    |        /opt/cribl                |  |
  |  |                           |    |                                  |  |
  |  |  - File Monitor (11x)    |--->|  - Routes & Pipelines           |  |
  |  |  - Journald (1x)         |    |  - Syslog Enrichment            |  |
  |  |  - Managed-Edge Mode     |    |  - Apache CLF Parser            |  |
  |  |                           |    |  - Fleet Management             |  |
  |  |  Port: 4200 (Mgmt)       |    |  - Port: 9000 (UI/API)         |  |
  |  +---------------------------+    |  - Port: 9420 (intern)          |  |
  |                                   |  - Port: 4200 (Edge Mgmt)      |  |
  |  +---------------------------+    |                                  |  |
  |  |  Tailscale/Headscale      |    +---------------+------------------+  |
  |  |  VPN-Overlay-Netzwerk     |                    |                     |
  |  +---------------------------+                    |                     |
  |                                                   |                     |
  +===================================================|=====================+
                                                      |
                              +----------+------------+----------+
                              |          |                       |
                              v          v                       v
                        +-----------+ +-----------+    +------------------+
                        | Splunk HEC| | Splunk S2S|    | Windows Edge     |
                        | Port 8088 | | Port 9997 |    | (geplant)        |
                        +-----+-----+ +-----+-----+    +------------------+
                              |              |
                              v              v
                      +---------------------------+
                      |    Splunk Enterprise       |
                      |    (externe Instanz)       |
                      +---------------------------+

2.2 Komponentenbeschreibung

Komponente Installationspfad Funktion Service-Name
Cribl Stream /opt/cribl Zentrale Verarbeitung, Routing, Fleet Management cribl.service
Cribl Edge /opt/cribl-edge Log-Sammlung direkt auf dem Host cribl-edge.service
Tailscale Systempaket VPN-Overlay fuer sicheren Remote-Zugriff tailscaled.service

3. Netzwerktopologie

3.1 Ports und Protokolle

Port Protokoll Komponente Richtung Beschreibung
9000 TCP/HTTPS Cribl Stream Eingehend Web-UI und REST-API
9420 TCP Cribl Stream Intern Interner Stream-Kommunikationsport
4200 TCP Cribl Stream Eingehend Edge-Node-Management (Fleet)
8088 TCP/HTTPS Splunk HEC Ausgehend HTTP Event Collector Destination
9997 TCP Splunk S2S Ausgehend Splunk-to-Splunk natives Protokoll
514 TCP/UDP Cribl Stream Eingehend Syslog-Empfang (optional)

3.2 Firewall-Regeln

Empfehlung: Der Zugriff auf Port 9000 (Cribl Stream UI) sollte ausschliesslich ueber das Tailscale-VPN-Interface erfolgen. Siehe Installationshandbuch fuer iptables/ufw-Konfiguration.
# Cribl Stream UI nur ueber Tailscale erlauben
iptables -A INPUT -i tailscale0 -p tcp --dport 9000 -j ACCEPT
iptables -A INPUT -p tcp --dport 9000 -j DROP

# Edge Management (lokal oder ueber Tailscale)
iptables -A INPUT -i lo -p tcp --dport 4200 -j ACCEPT
iptables -A INPUT -i tailscale0 -p tcp --dport 4200 -j ACCEPT
iptables -A INPUT -p tcp --dport 4200 -j DROP

4. Datenfluss

4.1 End-to-End Datenflusspfad


  Log-Quellen (12 Stueck)          Cribl Edge              Cribl Stream              Splunk
  ========================    ==================    ==========================    ============

  /var/log/auth.log       \                        +------------------------+
  /var/log/apache2/*.log   \   +--------------+    | Routes                 |
  /var/log/samba/log.*      -->| File Monitor |    |  - filter(source)      |    +---------+
  /var/log/tor/*            /  | (11 Quellen) |--->|  - pipeline-zuordnung  |--->| Splunk  |
  /var/log/cups/access_log /   +--------------+    +------------------------+    | HEC     |
  /var/log/boot.log*      /                        | Pipelines              |    | :8088   |
  /var/log/dpkg.log*     /     +--------------+    |  - syslog_enrichment   |    +---------+
  /var/log/dnsmasq-tor.log     | Journald     |    |  - apache_clf          |
  /var/lib/docker/**/*.log --->| (1 Quelle)   |--->|  - Eval (Metadaten)    |--->+---------+
                               +--------------+    |  - Regex Extract       |    | Splunk  |
                                                   |  - Auto Timestamp      |    | S2S     |
  /run/log/journal ------->    Managed Edge        +------------------------+    | :9997   |
                               tcp://127.0.0.1:4200                              +---------+

4.2 Verarbeitungsschritte im Detail

  1. Erfassung (Collection): Cribl Edge liest Log-Dateien ueber File Monitor und systemd Journal ueber die Journald-Quelle.
  2. Transport: Edge sendet Events ueber die interne Verbindung (Port 4200) an Cribl Stream.
  3. Routing: Die Route-Tabelle in Stream ordnet eingehende Events anhand von Filtern den passenden Pipelines zu.
  4. Transformation (Pipelines):
  5. Ausgabe (Destinations): Verarbeitete Events werden parallel an Splunk HEC (Port 8088) und Splunk S2S (Port 9997) gesendet.

4.3 Persistent Queues

Hinweis: Beide Splunk-Destinations sind mit Persistent Queues (PQ) konfiguriert: pqMaxSize: 1GB, pqMaxFiles: 100. Dies stellt sicher, dass bei einem Ausfall der Splunk-Verbindung keine Daten verloren gehen.

5. Sizing und Ressourcenbedarf

5.1 Mindestanforderungen (PoC)

Ressource Mindestanforderung Empfohlen (PoC) Pruefung
Kernel >= 3.10 5.x oder hoeher 00-preflight-check.sh
CPU-Kerne >= 4 4-8 Kerne 00-preflight-check.sh
RAM >= 8 GB 16 GB 00-preflight-check.sh
Festplatte (/opt) >= 5 GB frei 20 GB frei 00-preflight-check.sh
Netzwerk HTTPS zu cdn.cribl.io + Zugang zu Splunk-Host 00-preflight-check.sh

5.2 Ressourcenverteilung

Komponente CPU (geschaetzt) RAM (geschaetzt) Festplatte
Cribl Stream 1-2 Kerne 2-4 GB ~1 GB + PQ-Speicher
Cribl Edge 0.5-1 Kern 512 MB - 1 GB ~500 MB
Tailscale minimal ~50 MB ~20 MB

5.3 Skalierungshinweise fuer Produktionsbetrieb

Achtung: Die hier beschriebene Dimensionierung gilt ausschliesslich fuer den PoC-Betrieb. Fuer einen produktiven Einsatz mit hoeherem Datenvolumen sind dedizierte Server, Worker Groups und ein verteilter Cribl Stream Cluster erforderlich. Bitte konsultieren Sie die offizielle Cribl Sizing-Dokumentation.

6. Lizenzmodell

6.1 Cribl Free Tier

Feature Free Tier Limit PoC-Nutzung
Datenvolumen (Stream) 1 TB / Tag Weit unter dem Limit
Edge Nodes 100 Nodes 1-2 Nodes
Worker Processes Einzelner Worker Ausreichend
Fleet Management Enthalten Genutzt
Pipelines & Routes Unbegrenzt 2 Pipelines, 1 Route-Tabelle
Support Community (Slack, Docs) --

6.2 Upgrade-Pfade

Bei Uebergang in den Produktivbetrieb stehen folgende Lizenzoptionen zur Verfuegung:

7. RACI-Matrix

Legende: R = Responsible (fuehrt durch), A = Accountable (genehmigt/verantwortet), C = Consulted (wird befragt), I = Informed (wird informiert)
Aufgabe / Aktivitaet Infrastruktur-Team Security-Team Splunk-Admin Projektleitung Fachabteilung
PoC-Planung und Freigabe C C C A/R I
Server-Bereitstellung (NUC) R I I A I
Netzwerk/Firewall-Konfiguration R A C I I
Tailscale/Headscale-Einrichtung R C I I I
Cribl Stream Installation R C C A I
Cribl Edge Deployment R I C A I
Quellen-Konfiguration R C C I I
Pipeline-Entwicklung R C C I I
Splunk-Destination einrichten C I R A I
Sicherheitspruefung / Audit C A/R C I I
PoC-Auswertung und Bericht C C C A/R I
Go/No-Go-Entscheidung Produktion C C C R A