Dienstag, 23. Juli 2019, 07:54
Umstellung auf Gentoo - ein Erfahrungsbericht
Wie versprochen kommt heute ein kleiner Erfahrungsbericht zur Umstellung unserer Webhosting-Plattform auf Gentoo.
Um es vorweg zu nehmen: Es war wohl nach der Entscheidung zu einem eigenen Rechenzentrum im Jahr 2002 die beste Entscheidung in unserer Firmengeschichte.
Letztendlich haben wir uns mit Hilfe von Gentoo und unserem eigenen Build-System - bezogen auf das darunterliegende Betriebssystem - eine maßgeschneiderte Webhosting-Plattform zusammengestellt. Wir sind unglaublich flexibel, dank Gentoo. Und dank unseres Build-Systems arbeiten wir quasi genauso "binär" wie nicht-Source-basierende Distributionen.
Diese Flexibilität hat sich in den letzten Wochen schon mehrfach bewährt: Neue OS-Features (nennen wir es jetzt einfach mal Pakete) auszurollen, dauert nur wenige Minuten. Und dabei beziehe ich mich weniger auf die pure Installation als das gesamte Design und Management der Webhosting-Plattform.
Zur Umstellung, und um 'mal aus dem Nähkästchen zu plaudern: Wir haben die Umstellung auf den "alten" Servern vorgenommen. Mit Hilfe einer 3. Platte und einem zweiten, temporären RAID. Dazu haben wir ein eigenes Migrations-Skript entwickelt ("nur" 1.664 Zeilen), das - einmal angestoßen - alles automatisch durchführt: Temporäres RAID anlegen, Basis-Image aufspielen, konfigurieren, reine Daten mehrfach lokal synchronisieren, Dienste runterfahre, finale Synchronisation durchführen, Server rebooten und Abschlussarbeiten durchführen. Bei den meisten Servern war die Downtime, also die Zeit zwischen Beginn der finalen Synchronisation und nach dem Reboot weniger als 10 Minuten, bei vielen Servern sogar nur 3-5 Minuten.
Durch die Optimierung des zugrundeliegenden Gentoo-Systems haben wir auf denselben Maschinen (das konnten wir ja wunderbar vergleichen) einen Geschwindigkeitszuwachs auf das 3-fache bekommen - nur durch ein anderes OS!
Software-seitig haben wir unsere Verwaltungs-Oberfläche natürlich angepasst, zeitweise haben wir parallel gepflegt. Summa summarum haben wir binnen 12 Monaten über 300.000 Zeilen Code geschrieben, geändert etc.
Wir haben für dieses Jahr bzgl. unserer Verwaltungs-Oberfläche noch viel vor - seid gespannt!
Wir bekommen wahnsinnig viel gutes Feeedback zum neuen Gesamt-System - das bestätigt uns in dem, was wir tun.
Wenn Ihr Fragen habt, gerne in den Kommentaren!
Um es vorweg zu nehmen: Es war wohl nach der Entscheidung zu einem eigenen Rechenzentrum im Jahr 2002 die beste Entscheidung in unserer Firmengeschichte.
Letztendlich haben wir uns mit Hilfe von Gentoo und unserem eigenen Build-System - bezogen auf das darunterliegende Betriebssystem - eine maßgeschneiderte Webhosting-Plattform zusammengestellt. Wir sind unglaublich flexibel, dank Gentoo. Und dank unseres Build-Systems arbeiten wir quasi genauso "binär" wie nicht-Source-basierende Distributionen.
Diese Flexibilität hat sich in den letzten Wochen schon mehrfach bewährt: Neue OS-Features (nennen wir es jetzt einfach mal Pakete) auszurollen, dauert nur wenige Minuten. Und dabei beziehe ich mich weniger auf die pure Installation als das gesamte Design und Management der Webhosting-Plattform.
Zur Umstellung, und um 'mal aus dem Nähkästchen zu plaudern: Wir haben die Umstellung auf den "alten" Servern vorgenommen. Mit Hilfe einer 3. Platte und einem zweiten, temporären RAID. Dazu haben wir ein eigenes Migrations-Skript entwickelt ("nur" 1.664 Zeilen), das - einmal angestoßen - alles automatisch durchführt: Temporäres RAID anlegen, Basis-Image aufspielen, konfigurieren, reine Daten mehrfach lokal synchronisieren, Dienste runterfahre, finale Synchronisation durchführen, Server rebooten und Abschlussarbeiten durchführen. Bei den meisten Servern war die Downtime, also die Zeit zwischen Beginn der finalen Synchronisation und nach dem Reboot weniger als 10 Minuten, bei vielen Servern sogar nur 3-5 Minuten.
Durch die Optimierung des zugrundeliegenden Gentoo-Systems haben wir auf denselben Maschinen (das konnten wir ja wunderbar vergleichen) einen Geschwindigkeitszuwachs auf das 3-fache bekommen - nur durch ein anderes OS!
Software-seitig haben wir unsere Verwaltungs-Oberfläche natürlich angepasst, zeitweise haben wir parallel gepflegt. Summa summarum haben wir binnen 12 Monaten über 300.000 Zeilen Code geschrieben, geändert etc.
Wir haben für dieses Jahr bzgl. unserer Verwaltungs-Oberfläche noch viel vor - seid gespannt!
Wir bekommen wahnsinnig viel gutes Feeedback zum neuen Gesamt-System - das bestätigt uns in dem, was wir tun.
Wenn Ihr Fragen habt, gerne in den Kommentaren!
Kommentare
Ansicht der Kommentare: Linear | Verschachtelt
TM
Manuel Schmitt
Andreas
Wie habt ihr das gelöst? Nutzt ihr vorkompilierte Pakete?
Was mich damals auch gestört hat das man auf dem System ein komplettes Build System installiert haben musste, auch wenn es für den Anwendungsfall / Kunden nicht nötig war - ein potentieller Einbrecher hat dann wieder mehr Tools lokal liegen um seinen Exploit selber zu kompilieren.
hilti
Würde mich wundern, wenn es bei Gentoo die Möglichkeit eines "Compile-Servers" nicht gäbe.
Hoschi
Zumal jeder größer Betreiber einer Flotte von Linuxsystemen hat sicher eigene Repositories, egal ob Server, Desktop oder Laptop.
Ansonsten:
WebKit oder Firefox? Etwa vier Stunden. Kernel frisch aus dem Ofen gibt es meist in fünf Minuten.
Ansonsten:
Archlinux gibt einem, ein quasi reines GNU/Linux mit der Freiheit von Gentoo, ohne den Zeitaufwand. Bei Gentoo darf man sich dafür zum Teil noch eine mehrerer aktueller Version aussuchen, ein etwas ähnliches kommt so langsam bei Fedora.
Bei Archlinux ist man natürlich auch frei, Updates und Downgrades sind manuell - offiziellen Support hat man nur mit komplett aktuellen System.
Ich habe bei mir Wireshark auch auf die letzte Version mit Gtk3 festgenagelt, weil ich GNOME nutze. Und NetBeans wird die Version 8 wohl nicht mehr verlassen - Der Inkubator von Apache ist ein Hospiz für alles was Orcale dem Tode geweiht hat. Bitter Sarkasmus oder nüchterne Realität?