Cloud-native ohne Cloud: Architektur-Patterns für On-Prem in regulierten Branchen

Das eigentliche Problem ist selten “Cloud oder nicht?”, sondern: Wie baue ich ein System, das unter echten Restriktionen zuverlässig läuft – Daten dürfen das Werksgelände nicht verlassen, es gibt Air-Gap-Zonen, Software muss 10+ Jahre wartbar bleiben, Updates haben Wartungsfenster von 2 Stunden im Quartal, und dennoch sollen ML/LLM-Funktionen mit Governance, Observability und klaren SLAs bereitgestellt werden. In Verteidigung, Bahn, Fertigung oder Aviation ist diese Kombinatorik der Normalfall. Die “Cloud-native”-Debatte hilft nur, wenn wir sie entmystifizieren: Cloud-native ist ein Architekturstil, kein Ort. Die Muster – Container, deklarative Deployments, immutables Infrastruktur-Artefakt, Observability, Zero-Trust – funktionieren On-Prem genauso, wenn man die richtigen Trade-offs zieht.

Dieser Artikel beschreibt, welche Muster sich in der Praxis bewährt haben, wo die Fallstricke liegen und wie man KI-Funktionalität (inkl. LLMs) souverän On-Prem betreibt, ohne sich in Betriebs- und Compliance-Schulden zu manövrieren.

1) Restriktionen explizit machen: Was dominiert die Architektur?

Bevor Technologieentscheidungen diskutiert werden, müssen die harten Constraints klar sein. In regulierten Umgebungen sehen wir wiederkehrende Muster:

  • Datenhoheit und DSGVO: Personen- oder Betriebsdaten dürfen das Gelände nicht verlassen; Audit-Pflichten und Aufbewahrungsfristen gelten, “Delete on request” muss nachweisbar sein.
  • Air-Gap und Netzwerksegmentierung: Physisch getrennte Netze, Diode/Unidirektional-Verbindungen, DMZs. Kein “mal eben in die Cloud pushen”.
  • Lebensdauer: 10–20 Jahre Betrieb, aber Libraries haben 1–3 Jahre Lifecycle. Upgrades müssen reproduzierbar und rückrollbar sein.
  • Betriebsfenster: Strikte Wartungsfenster, Schichtbetrieb, Safety-Kopplung (z. B. nur in Stillstandsphasen).
  • Vorhersagbarkeit: Latenz-Jitter ist teurer als 5% mehr Hardware. “Best effort” ist wertlos, wenn Sicherheitsketten dranhängen.
  • Zulieferkette: Software muss lieferbar sein ohne US-Cloud-Abhängigkeit, mit attestierter Provenienz, signierten Artefakten und SBOM.

Diese Randbedingungen prägen jedes Architekturdetail stärker als “welches Orchestrierungstool” oder “welche Programmiersprache”.

2) Cloud-native als Muster, nicht als Standort

Die folgenden Prinzipien sind im Rechenzentrum genauso wertvoll wie in der Public Cloud:

  • Immutables Deployable: Build einmal, signieren, ausrollen. Keine “SSH auf Prod und Fix einspielen”.
  • Deklarative Zustände: Der gewünschte Systemzustand als Code (Kubernetes-Manifeste, Systemkonfiguration, Policies). Drift-Erkennung und Korrektur automatisch.
  • Service-Isolation via Container: Reproduzierbare Laufzeit, klare Ressourcenbudgets, Security-Boundaries.
  • Zero-Trust-Identität: Dienste sprechen nur mit mTLS/OIDC-Identität, keine impliziten Vertrauenszonen.
  • Observability by default: Metriken, Logs, Traces als First-Class-Citizens, mit Langzeitaufbewahrung on-prem.
  • Event-First-Integration: Lose Kopplung und robuste Replays statt Chatty RPC zwischen Segmenten.

Wichtig: Diese Muster sind unabhängig vom Hyperscaler. Die Herausforderung ist die Umsetzung unter Air-Gap, mit eingeschränkten Betriebsfenstern und Compliance-Anforderungen.

3) Topologien, die in der Praxis funktionieren

a) Edge-Cluster + Zentrales Rechenzentrum + DMZ

  • Edge: Kleine Cluster (2–3 Nodes, ggf. k3s/microk8s oder schlicht Container mit systemd), dicht an Sensorik/Aktoren. Verantwortlich für Ingestion, Vorverarbeitung, lokale ML-Inferenz.
  • Zentrale: Stärkerer Cluster im Werksrechenzentrum für Aggregation, Fleet-Model-Training, Dashboards, Datenhaltung, Governance.
  • DMZ: Nachrichtenzwischenpuffer mit strikten Firewall-Regeln. Unidirektionale Replikation ins Zentrum (Pull aus Zentrum oder Push via Diode-kompatible Mechanik).

Trade-offs:

  • Pro: Lokale Resilienz bei WAN-Ausfall, deterministische Latenzen, Datenhoheit.
  • Contra: Höhere Komplexität im Update- und Schlüsselmanagement; sorgfältige Versionierung für Edge und Zentrum notwendig.

b) Single-Node plus Replikationsknoten für einfache Standorte

  • Ein robuster Single-Node (z. B. mit Container Runtime + systemd) genügt, wenn HA-Anforderungen moderat sind und Wartungsfenster verfügbar.
  • Replikation zeitversetzt ins Zentrum; Write-Ahead-Logs/Ereignis-Streams werden gepuffert.

Trade-offs:

  • Pro: Deutlich weniger Moving Parts als Kubernetes; einfachere Diagnose.
  • Contra: Kein automatisches Failover; Recovery-Prozesse müssen geübt sein.

c) Air-Gapped Update-Pipeline mit signierten Bundles

  • Artefakte im zentralen, internen OCI-Registry gespiegelt (kein Internetzugang am Zielsystem).
  • Promotionsstufen: dev -> int -> preprod -> site-X; jedes Artefakt signiert, Provenienz attestiert, SBOM angehängt.
  • Physischer Transport via überprüfbares Medium oder Diode-taugliche Übertragung; Policy am Ziel prüft Signaturen und Gate-Kriterien (Tests, Vulnerability-Gates, Lizenzauflagen).

Trade-offs:

  • Pro: Prüfbare Lieferkette, Compliance-freundlich.
  • Contra: Lead Time erhöht sich; Testqualität in Preprod muss deutlich höher sein.

4) Orchestrierung: Kubernetes, k3s oder gar kein Orchestrator?

Kontext ist entscheidend:

  • Volatile Workloads, Multi-Tenant, GPU-Sharing, Rolling-Updates ohne Downtime? Dann lohnt sich ein kleiner, gut gehärteter Kubernetes-Stack on-prem (z. B. 3 Control-Plane Nodes ohne exotischen Zusatz).
  • Statischer Workload, wenige Services, klare Wartungsfenster? Dann reichen containerisierte Systemd-Units mit Health-Checks und Watchdogs.
  • Air-Gap + Minimal-Tooling? Komplexität runter: keine Service Meshes, keine exotischen CRDs, keine Pflicht zu Sidecars, wenn nicht nötig.

Bewährtes Minimum für On-Prem-K8s:

  • Ein Ingress-Controller, ein internes Registry-Mirror, ein Observability-Stack, ein GitOps-Operator (der mit offline Mirrors umgehen kann).
  • Netz wird so einfach wie möglich gehalten: Layer-7-Policies, mTLS auf Service-Ebene, aber kein Full-Blown Mesh, solange nicht messbar nötig.

5) Datenhaltung: CAP im Werk, nicht im Whitepaper

  • Transaktionale Workloads: Eine robuste, replizierte SQL-Instanz (z. B. Postgres-HA) deckt 80% der Anforderungen ab. Write-Konsistenz ist oft wichtiger als verteilte, globale Verfügbarkeit.
  • Verteilte Konsistenz: Nur dann zu einer verteilten SQL/Key-Value-DB greifen, wenn tatsächlich Partitionstoleranz bei Schreiblast erforderlich ist. Sonst zahlt man Operabilitätszinsen.
  • Ereignisprotokolle: Ereignis-Streams mit Retention und Replays sind der Integrationsanker zwischen Segmenten (Edge -> Zentrum). Sie entkoppeln Takt und erlauben robuste Recovery.
  • Lokale-First-Synchronisation: Bei intermittierenden Verbindungen können CRDT-/Delta-basierte Replikationsmuster an Endpunkten Konflikte minimieren. Für “Mensch im Loop”-Systeme hilft Soft-Lock + Merge-Regeln.