Warum wir NixOS für unsere Cloud-Infrastruktur verwenden
Ein Blick hinter die Kulissen: Warum Alplink sich für NixOS statt traditioneller Linux-Distributionen entschieden hat, um europäische Cloud-Infrastruktur zu betreiben. Über Reproduzierbarkeit, atomare Upgrades, Sicherheit und den Nutzen für unsere Kunden.
Als wir Alplink gegründet haben, mussten wir eine grundlegende Frage beantworten: Welchem Betriebssystem vertrauen Sie den Produktivbetrieb von Infrastruktur für europäische Unternehmen an, denen Datensouveränität, Sicherheit und Zuverlässigkeit wichtig sind?
Wir haben die üblichen Kandidaten evaluiert — Ubuntu, Debian, CentOS, Alpine. Alles solide Optionen, die von Tausenden von Unternehmen genutzt werden. Aber wir stießen immer wieder auf dieselben Probleme: Configuration Drift, nicht reproduzierbare Deployments, Upgrade-Angst und die „bei mir funktioniert's"-Lücke zwischen Entwicklung und Produktion.
Dann fanden wir NixOS, und es veränderte unsere Denkweise über Infrastruktur.
Was ist NixOS?
NixOS ist eine Linux-Distribution, die auf dem Nix-Paketmanager aufgebaut ist. Anders als traditionelle Distributionen, bei denen man Pakete imperativ installiert und Konfigurationsdateien bearbeitet (apt install, dann /etc/something.conf editieren), verfolgt NixOS einen deklarativen Ansatz: Sie beschreiben Ihr gesamtes System in einer einzigen Konfigurationsdatei, und NixOS baut es auf.
{ config, pkgs, ... }:
{
services.nginx.enable = true;
services.postgresql.enable = true;
services.postgresql.package = pkgs.postgresql_16;
networking.firewall.allowedTCPPorts = [ 80 443 ];
security.acme.acceptTerms = true;
security.acme.defaults.email = "admin@example.com";
}
Diese Konfiguration ist kein Skript, das Befehle ausführt. Es ist eine Spezifikation des gewünschten Systemzustands. NixOS liest sie und baut das gesamte Betriebssystem — Kernel, Pakete, Dienste, Benutzer, Firewall-Regeln — aus dieser einzigen Quelle der Wahrheit.
Warum das für unsere Kunden wichtig ist
1. Reproduzierbare Deployments
Jeder Server, den wir bereitstellen, wird aus derselben NixOS-Konfiguration gebaut. Es gibt keinen Drift zwischen Maschinen, kein „auf diesem Server ist ein zusätzliches Paket installiert, weil jemand vor sechs Monaten etwas debuggt hat." Wenn unsere Konfiguration PostgreSQL 16 mit diesen Einstellungen vorgibt, ist das genau das, was jeder Server ausführt.
Das bedeutet: Wenn wir Ihre Odoo-Instanz, WordPress-Website oder individuelle Anwendung bereitstellen, ist die Umgebung jedes Mal identisch. Keine Überraschungen.
2. Atomare Upgrades und Rollbacks
Traditionelle Linux-Upgrades sind nervenaufreibend. Sie führen apt upgrade aus, Pakete werden einzeln aktualisiert, und wenn etwas mittendrin schiefgeht, bleiben Sie mit einem teilweise aktualisierten System zurück.
NixOS-Upgrades sind atomar. Das System baut die neue Konfiguration vollständig auf und wechselt dann in einem einzigen Vorgang dorthin. Wenn die neue Konfiguration fehlschlägt, ist die alte noch da — unberührt. Ein Rollback ist so einfach wie das Auswählen der vorherigen Generation beim Booten.
Wir haben Produktivsysteme in unter 30 Sekunden zurückgerollt. Versuchen Sie das mal mit einer traditionellen Distribution.
3. Sicherheit durch Unveränderlichkeit
NixOS-Systeme sind funktional unveränderlich. Sie können nicht per SSH auf einen Server zugreifen und apt install ausführen — Änderungen müssen über die Konfiguration erfolgen. Das eliminiert eine ganze Klasse von Sicherheitsrisiken:
- Kein Configuration Drift — das laufende System stimmt immer mit der deklarierten Konfiguration überein
- Keine Schatten-IT auf Servern — niemand kann unautorisierte Software installieren
- Vollständiger Audit Trail — jede Änderung ist ein Git-Commit in unserem Konfigurations-Repository
- Reproduzierbare Sicherheitspatches — wenn ein CVE erscheint, aktualisieren wir die Konfiguration einmal und bauen alle betroffenen Server neu
4. Infrastructure as Code — wirklich
Viele Unternehmen behaupten, „Infrastructure as Code" zu betreiben, haben aber dennoch manuelle Schritte, undokumentierte Anpassungen und Stammwissen darüber, wie Server tatsächlich konfiguriert sind. Mit NixOS ist die Konfiguration die Infrastruktur. Es gibt keine Lücke zwischen Dokumentation und Realität.
Unsere gesamte Infrastrukturkonfiguration lebt in einem Git-Repository. Jede Änderung wird geprüft, getestet und versioniert. Wenn ein Kunde fragt „Welche genaue Software läuft auf meinem Server?", können wir auf den exakten Commit verweisen.
Wie NixOS im Vergleich zu traditionellen Ansätzen abschneidet
| Aspekt | Traditionell (Ubuntu/Debian) | NixOS |
|---|---|---|
| Konfiguration | Imperativ (Dateien bearbeiten, Befehle ausführen) | Deklarativ (gewünschten Zustand beschreiben) |
| Upgrades | In-Place, können teilweise fehlschlagen | Atomar, alles oder nichts |
| Rollback | Manuell, oft unmöglich | Eingebaut, sofort |
| Reproduzierbarkeit | Best-Effort mit Ansible/Puppet | Garantiert durch Design |
| Drift-Erkennung | Erfordert externe Tools | Architekturbedingt unmöglich |
| Audit Trail | Abhängig von Disziplin | Automatisch (Git + Nix Store) |
Die Kompromisse
Wir setzen auf Transparenz, daher hier, was NixOS uns kostet:
- Steilere Lernkurve — Nix hat eine eigene funktionale Sprache. Unser Team hat erhebliche Zeit investiert, sie zu lernen. Diese Zeit müssen unsere Kunden nicht aufwenden.
- Kleinere Community — NixOS hat eine engagierte, aber kleinere Community als Ubuntu oder Debian. Antworten zu finden erfordert manchmal tieferes Graben.
- Anderes mentales Modell — Ingenieure, die an imperative Linux-Administration gewöhnt sind, müssen ihre Instinkte umtrainieren. Man repariert einen NixOS-Server nicht, indem man sich per SSH einloggt und Dateien bearbeitet.
Wir halten diese Kompromisse für lohnenswert, weil unsere Kunden die Vorteile (Reproduzierbarkeit, Sicherheit, Zuverlässigkeit) erhalten, ohne die Kosten tragen zu müssen (Nix lernen, Konfigurationen pflegen).
Praxisbeispiel: Bereitstellung eines Kunden-Odoo-Stacks
Hier ist eine vereinfachte Version, wie wir die Odoo-Instanz eines Kunden bereitstellen:
{ config, pkgs, ... }:
{
services.odoo = {
enable = true;
package = pkgs.odoo17;
domain = "erp.customer-company.eu";
settings = {
dbfilter = "^customer_prodquot;;
proxy_mode = true;
list_db = false;
};
};
services.postgresql = {
enable = true;
package = pkgs.postgresql_16;
settings = {
shared_buffers = "2GB";
effective_cache_size = "6GB";
};
};
services.nginx.virtualHosts."erp.customer-company.eu" = {
enableACME = true;
forceSSL = true;
};
services.backup.postgresql = {
enable = true;
schedule = "daily";
retention = 30;
};
}
Diese einzelne Datei definiert den kompletten Stack: Odoo, PostgreSQL, Nginx mit automatischem SSL und täglichen Backups mit 30-Tage-Aufbewahrung. Sie ist versionskontrolliert, peer-reviewed und reproduzierbar. Wenn wir den Kunden auf neue Hardware migrieren müssen, wenden wir dieselbe Konfiguration an und erhalten ein identisches System.
Warum wir Ihnen das erzählen
Die meisten Hosting-Unternehmen behandeln ihre Infrastruktur als Blackbox. Wir finden, das ist der falsche Ansatz.
Wenn Sie einem Anbieter Ihre Geschäftsdaten anvertrauen, verdienen Sie es zu wissen, wie er arbeitet. Wir verwenden NixOS, weil es uns — und damit unseren Kunden — Garantien bietet, die traditionelle Infrastruktur nicht liefern kann: Reproduzierbarkeit, Auditierbarkeit und die Fähigkeit, jederzeit exakt nachzuweisen, was auf Ihrem Server läuft.
Dies ist besonders wichtig für europäische Unternehmen, die der DSGVO und branchenspezifischen Vorschriften unterliegen. Wenn ein Prüfer fragt „Wie stellen Sie konsistente Sicherheitskonfigurationen auf allen Servern sicher?", zeigen wir ihm keine Prozessdokumentation und hoffen, dass sie befolgt wurde. Wir zeigen ihm die NixOS-Konfiguration und die Git-Historie.
Möchten Sie es in Aktion sehen?
Alplink betreibt vollständig verwaltete europäische Cloud-Infrastruktur auf NixOS. Ob Sie Hosting für Odoo, WordPress oder individuelle Anwendungen benötigen — jedes Deployment profitiert von reproduzierbaren Builds, atomaren Upgrades und den Sicherheitsgarantien, die mit deklarativer Infrastruktur einhergehen. Ihre Daten bleiben in Europa, Ihre Infrastruktur ist auditierbar, und Sie müssen sich nie wieder um Configuration Drift oder misslungene Upgrades sorgen. Erfahren Sie, was Alplink für Ihr Unternehmen tun kann.