
Company news
Galaxus.de opens new location in Neuenburg am Rhein set to employ 1,200 workers
by Daniel Borchers

Cloud-Limitationen, proprietäre Schnittstellen, Vendor-locked Hardware, unflexible und veraltete VPN-Protokolle, überteuerte „Managed“-Services – was viele als Komfort feiern, erfüllt die Anforderungen von Galaxus nicht mehr.
Mittlerweile haben wir bei Galaxus ungefähr 30 Standorte. Lager, Shops, Büros, Clouds, alles über ganz Europa verteilt, verbunden mit Glasfaser, Kupfer oder auch Mobilfunk. Unsere Software läuft je nach Usecase verteilt auf Azure, GCP, Hetzner oder aber auch auf eigenen Servern direkt bei uns in den Lagern oder Bürogebäuden. Die Vielseitigkeit an Clouds, Anbindungsarten oder Standorten nimmt dabei stetig zu.
Daher investieren wir in eine flexible IT-Infrastruktur. Besonders wichtig ist dies ganz unten in der Abstraktion: Beim Netzwerk.

Wer baut das Nervensystem einer Firma - also das Netzwerk, das alles und jeden verbindet - auf der Basis von Verträgen, die unflexibel und teuer sind? Von Hardware, die dir vorschreibt, was funktioniert und dies sogar noch von hohen Lizenzgebühren abhängig macht? Von Providern, die für Netzwerk-Erschliessungsprojekte in Jahren und nicht in Wochen rechnen?
Wir nicht.
Das Entwicklerteam Planet Express - welches bei Galaxus für die IT-Infrastruktur verantwortlich ist - hat in den vergangenen 2 Jahren unser eigenes, vollständig auf OpenSource-Technologien basiertes Netzwerk gebaut. Kein Cloud-Lock-In. Keine Knebelverträge. Nur freie, verschlüsselte und skalierbare Peer-to-Peer-Verbindungen. Und das alles mit Software, die wir selber in unserer Kontrolle haben.
Damit positionieren wir uns strategisch klug: Offene Standards bedeuten Wahlfreiheit, Wettbewerb und bessere Konditionen. Abhängigkeit von einzelnen Anbietern kostet uns Flexibilität und Geld. Beispielsweise können wir dank unserem flexiblen Netzwerk unsere Build-Pipelines auf preiswerten Servern von Hetzner oder auf brach-liegenden Kapazitäten auf unserer eigenen Infrastruktur laufen lassen.
Und nein, das ist kein Proof of Concept. Kein „wir probieren das mal aus“. Das läuft in Produktion. Seit Monaten. Es transportiert eure Bestellungen und Paket-Labels ins Lager in Wohlen. Es ermöglicht unserem Onlineshop, in Echtzeit APIs bei Azure und Google anzuziehen während ihr unseren Shop durchstöbert.
Beginnen wir mit der Königsdisziplin der Digitec-Community: PCs zusammenbauen. Für unsere eigenen Standorte verwenden wir MinisForum MS-01 Rechner mit 2×10-Gbit/s-SFP-Ports. So können wir unsere Internetprovider direkt mit unserer Hardware verbinden und ohne Weiteres 10 Gigabits durchpfeffern.

Darauf installieren wir folgende Software:
Proxmox: Der Hypervisor, der alles zusammenhält. Damit bauen wir quasi unsere eigene (Netzwerk-)Cloud. Er ermöglicht es uns auch interessante Notfallzugriffe, falls mit den VMs mal etwas nicht stimmt.
OpenWRT: Das Betriebssystem für unsere Router. Es läuft virtualisiert auf den Proxmox-Nodes. Vermutlich greift ca. die Hälfte aller Leser dieses Beitrags über ein Derivat von OpenWRT auf diesen Blogpost zu.
Tailscale: Der Client, der die Verbindungen aufbaut. Er macht aus jedem Router oder Rechner einen Teil des Netzwerks, ohne dass man sich mit IP-Adressen oder Firewalls rumärgern muss.
Headscale: Die selbstgehostete Controlplane-Alternative zum managed Tailscale-Dienst. Kein SaaS-Dienst, der aus welchem Grund auch immer die Bedingungen ändert. Headscale verwaltet, wer mit wem kommunizieren darf.
Und wie machen wir das Ganze skalierbar? Wie verhindern wir, dass unsere Entwickler auf 30 Gateways Konfigurationen vornehmen müssen?
Terraform: für die automatische Instanzierung der Gateways auf Proxmox oder auch bei unseren Cloud-Providern.
Ansible: für die Konfiguration mit Jinja2-Templates und YAML-Dateien. Es ermöglicht uns, sämtliche Gateways mit einem Run zu konfigurieren. Unseren Code, wie wir das machen haben wir opensourced. Den Link findet ihr weiter unten.

Die rot gestrichelten Linien zeigen direkte Peer-to-Peer-VPN-Verbindungen zwischen unseren Standorten und Clouds. Wir nutzen Endpunkte bei Google, Microsoft, Hetzner sowie On-Premise-Umgebungen. Unser VPN stellt automatisch direkte Verbindungen zwischen den Standorten her, die miteinander kommunizieren dürfen.
Die grünen Linien stehen dafür, dass alle Standorte ihre Konfiguration von unserem Control-Server (Headscale) beziehen, der das Netzwerk konfiguriert, aber selbst keine VPN-Verbindungen routet.
Wie schon weiter oben erwähnt opensourcen wir unser Ansible-OpenWRT-Framework auf Github. Wenn also jemand von euch Bock hat, dies selber zu nutzen: Go ahead. Wir freuen uns auf PRs und Diskussionen im Repository.
Wir haben gesehen, wohin uns ungesunde Abhängigkeiten von einzelnen Unternehmen führen: zu unattraktiven Angeboten, langsamen und komplizierten Prozessen und schwieriger Zusammenarbeit. Unser Netzwerk ist der Gegenentwurf: schnell, sicher, flexibel und kontrollierbar.
Und das Beste? Unseren Devs macht's Spass damit zu arbeiten und ihr könnt es selbst nachbauen; egal in welcher Ausprägung: Für das eigene Unternehmen? Für euren Arrr-Stack zu Hause? Habt ihr technische Fragen? Schreibt es in die Kommentare!
Sie sind nach wie vor im produktiven Einsatz und ihre Nutzung ist in den letzten drei Jahren auf rund 640 gleichzeitig aktive Clients angewachsen. Damit hat sich die Anzahl der genutzten Geräte seit dem Beginn etwa verdoppelt.
Und das Github Repository ist weiterhin aktiv und erhält von uns jede Menge Engineering-Liebe!
My first server was still in my parents' house: Debian, packed with videos and games. After many years as a Windows gamer, I fell into the open source rabbit hole, and I don't want to go back. The power that the ecosystem gives you as an engineer is just too awesome. Teamlead at Galaxus since 2018. Hacker, tinkerer, tinkerer at home and at work.
News about features in our shop, information from marketing and logistics, and much more.
Show all