
Sechzig Container auf einem Server
Eine Bare-Metal-Box führt Dutzende bis Hunderte von Hoody-Containern aus. KSM und BTRFS-Dedup machen die Marginalkosten nahezu null.
Achthundert isolierte Container auf drei Bare-Metal-Servern. Jeder Kunde bekommt sein eigenes Dateisystem, seine eigene URL, seinen eigenen Kernel-Namespace — eine Pauschalserver-Rechnung, kein Meter pro Mandant. Die ehrliche Architektur ist nicht mehr die teure.
Flotten-Ops-Dashboard · 812 Tenants auf 3 Bare-Metal-Knoten · eine Pauschalrechnung, kein Meter pro Mandant
Dein Billing-Webhook trifft ein Hoody-Exec-Skript. Das Skript kopiert einen Frischkunden-Container aus dem Template-Snapshot, der neue Tenant landet auf seiner eigenen URL, und das Flotten-Dashboard zählt um eins hoch. Drei HTTP-Calls, kein Orchestrator.
Ein Serverless V8 Isolate. Die Webhook-URL ist einfach eine TypeScript-Datei in scripts/1/. Kein Express, keine Server-Config, kein eigener Container.
BTRFS Copy-on-Write — nur das Pro-Tenant-Delta belastet die Disk. Firewall- und Netzwerkregeln klonen mit dem Snapshot mit. Landet auf dem Flotten-Server, der gerade Spielraum hat.
Der signierte Authorize-Endpoint stellt einen container_claim für eine Stunde aus. Deine App leitet den Kunden in seine eigene Sandbox um. Gesamte Signup-Zeit: unter sechzig Sekunden.
Die ganze Pipeline sind drei HTTP-Calls. Kein Kubernetes-Operator, kein Namespace-YAML, kein Cluster-Admin. Die Flotte fügt Tenants genauso hinzu, wie eine Hashtable Einträge hinzufügt — nur dass jeder Eintrag ein echter Linux-Container ist.
Ihr Abrechnungsmodell berechnet pro Mandant. Hoody rechnet pro Server ab. Sobald die Abrechnungseinheit von Mandant zu Box wechselt, schrumpft die Pro-Mandant-Zahl, wenn du die Dichte hinzufügst — und die Kurve wird flacher, je mehr du wächst.
Die nächsten hundert Mandanten ändern die Rechnung nicht — sie ändern den Divisor. KSM dedupliziert identische Memory-Pages über Container hinweg; BTRFS Copy-on-Write hält Base-Image-Bytes auf dem Server geteilt. Jeder neue Container verbraucht nur das Delta vom Template; die Abrechnung bleibt beim Pauschalserver.
Hoody-Server-Preise sind marktplatzgetrieben und variieren je nach Region, Spec und Anbieter. Die Beispielflotte nutzt drei Knoten; Marketplace-Server starten bei $29/Monat und variieren je nach Region, Spec und Dauer; Konkurrenzschätzungen sind illustrative Spannen aus öffentlichen Preisen für vergleichbare Pro-Tenant-Compute. Dichte unterstellt typische SaaS-Workloads — Tenants, die den größten Teil des Tages idle sind. Schwere Datenbanken oder AI-Workloads brauchen mehr Spielraum pro Container.
Sobald Isolation günstig ist, hört die Architektur auf, Kompromisse zu machen. Die Features, die dein CFO zu vetoen pflegte, werden Defaults.
Stripe-Webhook → Hoody Exec → POST /containers/$TEMPLATE/copy. Der neue Tenant bootet aus demselben Snapshot, aus dem jeder andere Tenant gebootet hat. Identische Baseline, isolierte Zukunft. Keine tenant_id-Spalten zum Durchfädeln, keine geteilte Zeile zum Vergessen.
DELETE /api/v1/containers/$CID. Das Dateisystem geht, die SQLite geht, die Cron-Jobs gehen, das Audit-Log geht — weil sie alle an einem Ort lebten. Kein „DELETE … WHERE tenant_id … plus 12 weitere Tabellen, die du vergessen hast.“
Das Runaway-Skript eines Kunden trifft die CPU- und RAM-Quotas seines Containers. Die 811 anderen Container in der Flotte merken nichts. Keine Noisy-Neighbor-Audits, keine geteilte Lock-Tabelle, kein geteilter Connection Pool — Kernel-Namespaces machen die Isolations-Arbeit, die der Application-Layer früher vorgetäuscht hat.
Pro-Tenant-Isolation kostete früher pro Tenant. Jetzt kostet sie pro Server.
Pro-Tenant-Isolation hieß historisch entweder eine clevere WHERE-Klausel oder eine Pro-Tenant-Rechnung. Container-pro-Kunde im Flotten-Maßstab verdrängt beides:
Achthundert isolierte Tenants auf denselben Servern, die dein Laptop ersetzt. Die ehrliche Architektur ist endlich die bezahlbare.