Architektur-Atlas

System-Topologie, Datenflüsse, Entscheidungs-Historie

Dieser Atlas dokumentiert die Architektur des LATUS AI Stack in der Tiefe, die du für Audit, technische Übernahme oder Lizenzierung benötigst. Drei Ebenen werden sichtbar: die Schichtung nach Zugriffs-Klasse (User-Facing, Internal-IT, Direct-Exposed), die Komponenten-Topologie über QNAP und Olares hinweg sowie die Entscheidungs-Historie als Architecture-Decision-Records. Quelle aller Aussagen sind die ADRs unter docs/architecture/decisions/ und der Apply-Log als Single-Source-of-Truth.

ADR-009-Boundary – Drei Schichten der LATUS-Architektur

Architektur-Boundary für Routing und Authentifizierung

Jeder Endpunkt im LATUS AI Stack wird genau einer von drei Kategorien zugeordnet. Die Kategorie bestimmt Routing-Pfad, Authentifizierungs-Schicht und Erreichbarkeits-Modell. Diese Trennung verhindert, dass interne IT-Werkzeuge versehentlich über Cloudflare exponiert werden und dass User-Facing-Komponenten ohne SSO-Schutz erreichbar sind.

Kategorie 1

User-Facing (CF + Casdoor)

Cloudflare-Tunnel mit Casdoor-SSO. Einheitlicher Login-Pfad für Mitarbeitende, Auditoren und Pilot-Kunden.

  • latus-ai · kompass · handbuch
  • status · auth · ragflow
  • latus-n8n · s3 · static

Kategorie 2

Internal-IT (LAN + WireGuard)

Betriebs- und Verwaltungs-Werkzeuge des Host-Systems. Keine Cloudflare-Exposition, Zugriff ausschließlich via WireGuard-VPN. Strikt getrennt von der LATUS-User-Facing-Schicht.

  • Host-Betrieb · Backup · Wartung
  • LAN-only, keine Zero-Trust-Exposition

Kategorie 3

Direct-Exposed

Host-Komponenten mit eigener TLS- und Auth-Schicht außerhalb von Caddy. Cloudflare wirkt hier nur als CDN-Layer ohne Zero-Trust-Policy – bewusst isoliert vom LATUS-Stack.

  • Eigene TLS-Terminierung
  • Eigene Auth, eigene Session

Funktionale Subdomain-Karte

latus-consulting.cloud · Migrations-Stand

Die zwölf Subdomains der Zone latus-consulting.cloud werden derzeit aus der bisherigen Zone latus-consulting.de bzw. den Hilfs-Zonen migriert. Status-Punkte zeigen den Live-Stand: grün = produktiv erreichbar, gelb = in aktiver Migration, grau = vorgesehen aber noch nicht öffentlich.

Subdomain Funktion Status
kompass.latus-consulting.cloud LATUS Kompass – Einstiegs-Portal für Auditoren und Pilot-Kunden Live
fiberproof.latus-consulting.cloud Fiberproof-AI-Landingpage, öffentlich für Partner-Review Live
ragflow.latus-consulting.cloud RAGFlow Citation-Preview – Klick aus dem Chat auf die Original-Stelle Live
s3.latus-consulting.cloud MinIO Storage – S3-kompatibler Upload-Endpunkt Live
latus-ai.latus-consulting.cloud LobeChat – primäre Chat-Oberfläche für Mitarbeitende In Migration
handbuch.latus-consulting.cloud Benutzerhandbuch (gerendertes Markdown) In Migration
status.latus-consulting.cloud Uptime-Kuma – Status-Page mit 24 Heartbeat-Monitoren In Migration
auth.latus-consulting.cloud Casdoor – SSO-Provider, MS-Entra-Bridge In Migration
n8n.latus-consulting.cloud n8n Workflow-Plattform (Geschäfts- und Stabilisierungs-Workflows) In Migration
geocoding.latus-consulting.cloud Geocoding-AI – Adress-Matching-API auf Nominatim-Basis In Migration
geocoding-demo.latus-consulting.cloud Geocoding-AI Demo-Oberfläche für Partner-Review In Migration
static.latus-consulting.cloud Statische Assets (Bilder, Style-Bundles, Doku-Snippets) In Migration

Komponenten-Map

Hardware-Knoten und Plattform-Services

Der Stack läuft auf zwei Hardware-Knoten – einer QNAP-Storage- und Container-Plattform sowie einem Olares-K3s-Cluster für GPU-Last und Bridge-Pods. Zwischen beiden vermitteln Caddy als einheitlicher Reverse-Proxy und Cloudflare als Tunnel- und Auth-Layer.

Hardware · Storage · Container

QNAP TVS-874T (192.168.180.222)

Primärer Storage- und Container-Knoten. Beherbergt den Compose-Stack, den Reverse-Proxy und den Cloudflared-Connector.

  • Container-Stack (Compose) – LATUS-Services produktiv
  • Caddy-Reverse-Proxy – TLS-Terminierung intern
  • MinIO – S3-kompatibler Object-Storage
  • Cloudflared-Tunnel – Edge-Anbindung an CF-Zero-Trust

Hardware · GPU · K3s

Olares K3s-Cluster (192.168.180.218)

GPU-Knoten für Sprachmodelle und Bridge-Pods. K3s-basiert, mit HAMI für GPU-Sharing zwischen mehreren Workloads.

  • LiteLLM-Bridge – einheitlicher LLM-Routing-Endpunkt
  • RAGFlow – Wissensbasis-Indexer und Citation-Server
  • LobeChat – Chat-Oberfläche (Migration in Arbeit)
  • vLLM-Aux – Sprachmodell-Inferenz
  • GPU-Pin via HAMI – definiertes Speicher-Budget pro Workload

Reverse-Proxy

Caddy-2

Einheitlicher TLS-Layer für alle veröffentlichten Subdomains. ADR-023 schreibt diesen Pfad als Standard fest: Cloudflared-Tunnel → Caddy → Backend, ohne pro-Service-eigene Edge-Konfiguration.

Edge · CDN · Auth

Cloudflare

DNS, Zero-Trust-Tunnel, Access-Policies. Optionaler R2-Storage. Zentraler Edge-Layer für sämtliche User-Facing-Endpunkte gemäß ADR-009-Kategorie 1.

Identität · SSO

Casdoor

SSO-Provider, MS-Entra-Bridge. Erzwingt einheitlichen Login-Pfad für alle User-Facing-Services und ersetzt tool-eigene Login-Masken.

Wissensraum

LATUS BRAIN

RAGFlow plus Postgres mit ParadeDB- und pgvector-Erweiterung als Wissensraum-Indexer. Belegbare Antworten mit Citation-Loop, lokale Inferenz ohne Cloud-Daten-Abfluss.

Datenflüsse

Die drei wichtigsten Pfade durch den Stack

Drei Datenfluss-Pfade decken über 90 Prozent der täglichen Nutzer-Interaktionen ab. Jeder Pfad ist hier als sequentielle Step-Folge dargestellt, wie sie sich aus Sicht der beteiligten Komponenten beobachten lässt.

Chat-Anfrage – Frage stellen, Antwort mit Belegen erhalten

UserCloudflareCaddyLobeChatLiteLLM-BridgevLLM / OpenAIBRAIN-Citation-LoopUser

Die Citation-Loop reichert die Antwort mit Beleg-Markern an, die auf die Original-Stelle im Dokumenten-Repository zeigen. Lokales Sprachmodell für vertrauliche Inhalte, OpenAI optional mit aktivem PII-Filter.

Upload-Workflow – Dokumente in den Stack einspeisen

Users3.latus-consulting.cloudMinIOPre-ProcessingGeocoding-AI / Fiberproof-AI

Pre-Processing übernimmt Format-Konversion, Layout-Erkennung und Tagging. Anschließend übergibt der Pfad an die fachlich passende Pipeline – Geocoding-AI für Adress-Daten, Fiberproof-AI für FTTH-Bauakten.

Citation-Klick – Vom Beleg-Marker zur Original-Stelle

Userragflow.latus-consulting.cloudragflow-proxy:8010(Bearer-Auth)Original-Dokument

Der ragflow-proxy ersetzt die ursprünglich geplante LiteLLM-Callback-Lösung (siehe ADR-002). Bearer-Token wird pro Session vergeben, Zugriff auf Original-Dokumente bleibt auf berechtigte Mitarbeitende beschränkt.

Entscheidungs-Historie – Architecture-Decision-Records

Vollständige Entscheidungs-Historie · 30 ADRs

Jede strukturelle Architektur-Entscheidung wird als ADR unter docs/architecture/decisions/ abgelegt – mit Status, Kontext, Entscheidung und Konsequenzen. Hier die vollständige Entscheidungs-Historie des LATUS AI Stack in chronologischer Reihenfolge.

ADR-001

Multi-Agent-Ops-Architektur

Betriebsmodell mit spezialisierten Rollen, Hiring-Manager-Pattern und wiederkehrenden Auto-Operations-Cycles.

ADR-002

Citation-Proxy statt LiteLLM-Callback

Belege/Citations laufen über einen dedizierten Proxy statt über LiteLLM-Callbacks – entkoppelt den Citation-Loop vom Routing.

ADR-003

Storage-Restrukturierung

Neuordnung der Storage-Topologie (Pools, generische Shares, Bind-Mounts) für klare Trennung und Backup-Fähigkeit.

ADR-004

LobeChat-Olares-Migration

Etappenweise Verlagerung der LobeChat- und BRAIN-Komponenten Richtung Olares-Cluster.

ADR-005

Olares-Markt-App-Pattern für Bridge-Pods

Bridge-Pods werden als Olares-Markt-Apps deployt – standardisiertes, reproduzierbares Deploy-Muster.

ADR-006

n8n-LLM via LiteLLM-HTTP-Pattern

n8n spricht Sprachmodelle ausschließlich über LiteLLM per HTTP an – keine direkten Modell-IDs.

ADR-007

n8n universelles Workflow-Template

Einheitliches Workflow-Template als Basis für wiederkehrende n8n-Automatisierungen.

ADR-008

Root-Cause-First Mutations-Disziplin

Vor jeder Produktions-Mutation Wurzel-Ursache und empirische Vor-Validierung statt Symptom-Patch.

ADR-009

Architektur-Boundary für Routing und Authentifizierung

Drei Kategorien (User-Facing, Internal-IT, Direct-Exposed) bestimmen Routing und Auth. Verhindert versehentliche Exposition interner Werkzeuge.

ADR-010

Image-Tag-Pinning-Disziplin

Container-Images per SHA256/Tag pinnen statt :latest – reproduzierbare, rollback-fähige Deploys.

ADR-011

Cloudflared Network-Layer

Cloudflared als definierte Netz- und Edge-Schicht für die Tunnel-Anbindung.

ADR-012

Outside-Observer-Pattern (Secondary WAN)

Externe Beobachtung des Stacks über einen zweiten WAN-Pfad – erkennt Ausfälle von außen statt nur intern.

ADR-013

Lokale-Inferenz-Modell-Migration

Wechsel des lokalen Inferenz-Modells (historisch Gemma 3 → Qwen 3; aktueller Stand Gemma 4 26B-A4B-AWQ auf vLLM).

ADR-014

MCP Tool-Use End-to-End-Setup

Durchgängiges Setup für MCP-Tool-Use (Excel/Word/Office) von der Chat-Anfrage bis zur Datei-Bereitstellung.

ADR-015

LobeChat-Image-Upgrade MCP-Pipeline

Definierter Image-Upgrade-Pfad für LobeChat inklusive MCP-Plugin-Pipeline.

ADR-016

Geodaten-Adress-Matching (Nominatim auf Olares)

Adress-Matching auf Nominatim-Basis im Olares-Cluster als Grundlage für Geocoding.

ADR-017

Geocoding-AI Backend-Stack

Backend-Architektur des Geocoding-AI-Dienstes (Adress-zu-Koordinaten, Verarbeitungs-Modi).

ADR-018

ParadeDB als separate Postgres-Instanz für LobeChat

Trennung der LobeChat-Postgres vom BRAIN-Postgres. ParadeDB-Erweiterung für Volltext und pgvector für Embeddings.

ADR-019

Memory-Cluster-Architektur für skill-zentrierten Lazy-Load

Cluster-Index statt Flat-File-Memory. Lazy-Load über 12 Themen-Cluster, Detail-Files in topics/.

ADR-020

Multi-Subagent-Dekompositions-Pattern

Reflexive Zerlegung komplexer Aufträge in mehrere parallel arbeitende Subagenten.

ADR-021

Cloudflared-Router: Multi-Connector statt Cutover

Tunnel-Migration über mehrere Connectoren parallel statt hartem Cutover – kein Downtime-Risiko.

ADR-022

QNAP-Container: Zwei Patterns (Compose-Stack vs. Single-App)

Verbindliche Trennung: orchestrierter Compose-Stack für Plattform-Services, Single-App-Container für isolierte Hilfswerkzeuge.

ADR-023

CF-Tunnel-Routing einheitlich via Caddy

Cloudflared-Tunnel → Caddy → Backend als einziger Pfad. Eliminiert pro-Service-eigene Edge-Konfigurationen.

ADR-024

LiteLLM Aux/Chat-Trennung wirkungslos – vLLM Continuous-Batching schützt

Schutz vor Last-Spitzen entsteht nicht durch LiteLLM-Pool-Trennung, sondern durch vLLM Continuous-Batching auf GPU-Ebene.

ADR-025

Personal-Brain-Naming-Konvention und Multi-User-Dataset-Mechanik

Hash-basierte Dataset-Namen für persönliche Wissens-Modelle. Identitäts-basierte Trennung pro Person.

ADR-026

Multi-Turn-Session-Kontext im ragflow-proxy

Messages-Array-Prefix-Pattern erhält den Dialogfaden auch über RAGFlow-Roundtrips hinweg.

ADR-027

LATUS-Doku-Style-Guide (HTML, Inline-CSS, Markdown)

Verbindliche Style-Regeln: Inline-CSS für HTML-Auftritte, Markdown-Standard für Handbuch, einheitliches Design-Token-Set.

ADR-028

Bundle-Build mit Pre-Baked-Secrets-Pattern

Olares-Bundle-Builds mit vorab eingebetteten Secrets als definiertes, wiederholbares Build-Muster.

ADR-029

Drift-Detection 5-Schichten live auf Olares-Node

Fünf-Schichten-Drift-Check (Config, Storage, Container, K3s, Service-Health) als geplanter Timer auf dem Olares-Knoten.

ADR-030

OpenRouter via LiteLLM-Whitelist-Aliase

OpenAI-Modelle laufen über OpenRouter, in LiteLLM als Whitelist-Aliase geführt – ein Provider/Key, tolerantes Routing.

Alle ADRs liegen mit vollständigem Kontext, Entscheidung und Konsequenzen im Repository unter docs/architecture/decisions/.

Self-Healing-Patterns

Reaktive Selbstheilung im laufenden Betrieb

Bekannte Störungs-Muster werden ohne menschlichen Anstoß behoben. Die hier gelisteten fünf Mechanismen sind heute produktiv und liefern messbare Heilungs-Ergebnisse.

Detection · 10 Minuten

Self-Heal-Monitor

Läuft alle 10 Minuten gegen die Kern-Komponenten. Erkannte Anomalien lösen den passenden Heilungs-Pfad aus, gleichzeitig geht ein Pushover-Alert an den verantwortlichen Spezialisten.

Knowledge-Pipeline

BRAIN-Limbo-Doc-Auto-Recovery

Dokumente, die im Indexier-Limbo hängen bleiben, werden vom Recovery-Lauf autonom geheilt. Neun Dokumente seit Deploy ohne menschlichen Eingriff zurück in den Index gebracht.

Stabilität · GraphRAG-Light

Crash-Repeater-Detection

Wiederkehrende Crash-Muster werden erkannt und blockiert, bevor sie eine Loop bilden. Null Crash-Repeater seit Einführung von GraphRAG-Light.

vLLM · Speicher-Schutz

OOM-Loop-Schutz

Die Worker-Anzahl ist auf workers=2 fixiert. Diese Begrenzung verhindert den ursprünglich gemessenen OOM-Loop unter Last-Spitzen und liefert seitdem stabilen Antwort-Pfad.

External-Awareness · ab 2026-05-24

External-LLM-Probe

Synthetische Proben gegen api.openai.com, api.anthropic.com, latus-rag und latus-ai. Unterscheidet Anbieter-Ausfall von internem Problem – Voraussetzung für die richtige P0-Triage.

Abkürzungen

Begriffe und Kürzel im Überblick

Die wichtigsten technischen Kürzel dieses Atlas, kurz erklärt. Eine ausführliche Begriffs-Übersicht liefert das Glossar im Kompass.

ADR
Architecture Decision Record – dokumentierte Architektur-Entscheidung mit Kontext und Konsequenzen.
CF
Cloudflare – Edge-Layer für DNS, Zero-Trust-Tunnel und Access-Policies.
SSO
Single Sign-On – ein Login-Pfad für mehrere Dienste.
IdP
Identity Provider – Identitäts-Dienst, hier Casdoor gekoppelt an Microsoft Entra.
MS Entra
Microsoft Entra ID – Microsofts Cloud-Identitäts-Dienst (frühere Bezeichnung Azure AD).
TLS
Transport Layer Security – Verschlüsselung der Verbindung (HTTPS).
CDN
Content Delivery Network – verteiltes Auslieferungs-Netz für statische Inhalte.
VPN / WireGuard
Verschlüsselter Fernzugriff ins interne Netz; WireGuard ist die hier genutzte VPN-Technik.
LAN / WAN
Lokales Netz (LAN) bzw. Weitverkehrs-Netz/Internet-Anbindung (WAN).
LLM
Large Language Model – großes Sprachmodell als Antwort-Generator.
vLLM
Hochdurchsatz-Server für lokale Sprachmodell-Inferenz (Continuous-Batching auf GPU).
RAG / RAGFlow
Retrieval-Augmented Generation – Antworten mit Beleg-Suche in Dokumenten; RAGFlow ist die Engine.
MCP
Model Context Protocol – Standard zur Anbindung von Werkzeugen (z.B. Excel/Word) an den Chat.
K3s
Leichtgewichtige Kubernetes-Distribution für den Olares-Cluster.
HAMI
GPU-Sharing-Schicht für Kubernetes – teilt eine GPU mit Speicher-Budget zwischen Workloads.
GPU
Grafik-/Rechen-Beschleuniger, hier für KI-Inferenz.
OOM
Out of Memory – Speicher-Überlauf; ein Schutz verhindert OOM-Loops unter Last.
ParadeDB / pgvector
Postgres-Erweiterungen für Volltext-Suche (ParadeDB) bzw. Vektor-Embeddings (pgvector).
LATUS BRAIN
LATUS-Wissensraum (RAGFlow + Postgres) für belegbare Antworten aus Firmen-Dokumenten ohne Cloud-Abfluss.

Du möchtest den Atlas vertiefen, einen einzelnen ADR lesen oder den Stack als Lizenzierungs-Basis prüfen? Zum Kompass für Einstiegs-Übersicht, oder direkt an den zuständigen Ansprechpartner.