Gegen Ende letzten Jahres versetzte die Einstellung der konventionellen CentOS-Distribution die Community in Aufruhr. Seitdem kursieren verschiedene Aussagen und Mythen im Internet – wir verschaffen Klarheit und zeigen auch denkbare Alternativen auf.
Was ist passiert?
Im Dezember 2020 verkündeten Red Hat und das CentOS-Projekt die Einstellung der bis dahin bekannten CentOS-Disitribution. CentOS verstand sich bisher als binär- und bugkompatibler Klon von RHEL (Red Hat Enterprise Linux). Somit ist sichergestellt, dass Anwendungen unter CentOS ebenso funktionieren wie unter RHEL – auch Fehler sind aufgrund der gleichen Code-Basis reproduzierbar. Dies ändert sich nun.
Demnach wird CentOS 7 noch wie ursprünglich geplant bis Juni 2024 unterstützt und erfüllt das Versprechen von 10 Jahren Updates. Das Support-Ende von CentOS 8 hingegen wird von 2029 auf 2021 vorgezogen und somit um 8 Jahre verkürzt.
Neben RHEL wird auch CentOS Stream als denkbare Alternative genannt. Je nach Anforderungen und Szenario ist das auch eine durchaus valide Option. Für Kunden[1], die einen versionskonsistenzen und kostenfreien Klon suchen, ist es jedoch nicht die richtige Wahl.
RHEL
Aufgrund seiner Stabilität genießt RHEL schon lange eine weite internationale Verbreitung. Vor allem in Produktionsumgebungen ist daher oft das Betriebssystem aus North Carolina zu finden. Für Testumgebungen setzen viele Kunden gerne auf CentOS um Kosten zu sparen – dank Binär- und Bugkompatibilität ohne Einschränkungen.
Nachdem die Community ablehnend auf die Veränderung reagierte, erweiterte Red Hat die kostenlose Developer Subscription. Während diese vorher nur eine einzelne Person für eine kostenfreie RHEL-Subskription ohne Support berechtigte, erlaubt diese nun bis zu 16 RHEL-Systeme, die auch produktiv und in Cloud-Umgebungen genutzt werden können. Das kommt vor allem kleineren Kunden zugute, die sich die Kosten einer RHEL-Subskription sparen wollten.
Für die Verwendung wird ein Red Hat-Kundenkonto benötigt, die Subscription beinhaltet RHEL und kostenlose Updates. Zusatzprodukte, wie z.B. Red Hat Satellite oder OpenShift sind jedoch kein Bestandteil der Subscription.
In Ergänzung soll kurzfristig auch eine Developer Subscription for Teams zur Verfügung stehen. Diese bezieht sich auf eine Firma statt auf einzelne Personen und erlaubt mehrere tausende RHEL-Instanzen. Die Subscription umfasst jedoch ausschließlich Entwicklungssysteme, was es vor allem für Software-Hersteller interessant macht. Gegen Aufpreis wird auch Support angeboten.
CentOS Stream
2019 wurde CentOS Stream als neues Parallelprojekt vorgestellt – anders als das herkömmliche CentOS-Projekt erscheint dieses unter dem Rolling Release-Modell. Hier liegt statt einer festen Version (z.B. 8.3) eine kontinuierliche Entwicklung vor. Die einzelnen Pakete der Distribution (z.B. Kernel, Anwendungen) werden fortlaufend aktualisiert – statt von Versionen oder Releases wird von Snapshots gesprochen.
Rolling Release-Distributionen sind vor allem bei Entwickler:innen und Power-User:innen beliebt, die immer die neuesten Pakete benötigen, um Tests vor Erscheinen eines neuen Releases ausgiebig durchführen zu können. Neben CentOS Stream sind auch openSUSE Tumbleweed und ArchLinux bekannte Vertreter dieser Gattung. Mit CentOS Stream können Entwickler:innen sicherstellen, dass ihre Anwendungen ab dem Erscheinen einer neuen RHEL-Version direkt lauffähig sind. Eine ähnliche Strategie verfolgen openSUSE Tumbleweed und SUSE Linux Enterprise (SLE) seit 2015. Für normale Anwender:innen sind Rolling Release-Distributionen eher ungeeignet, da mit mehr Programmfehlern zu rechnen ist. Auch werden deutlich häufiger Aktualisierungen angeboten – wird ein solches System über eine längere Zeit nicht gepatcht, werden Updates möglicherweise durch Abhängigkeitsfehler erschwert.
CentOS Stream stellt den Stand des nächsten RHEL Minor-Releases dar (upstream) – also aktuell beispielsweise 8.4. Somit ist die Distribution weiterhin binärkompatibel zu RHEL, ist dem Produkt aber einige Schritte voraus. Administrator:innen könnten neue Features mit Stream vorab testen. Dem Start eines neuen Stream-Zweiges (z.B. Stream 8) liegt eine spezifische Fedora-Version zugrunde.
Beschriftung: Technischer Zusammenhang zwischen Fedora, CentOS Stream und Red Hat Enterprise Linux
Früher basierte RHEL direkt auf Fedora und CentOS war als nachgelagertes Produkt (downstream) zu betrachten. Nun versteht sich Stream als Zwischenstufe zwischen Fedora und RHEL. Somit dürfte es stabiler als Fedora sein, jedoch weniger stabil als ein fertiges RHEL-Release.
Forks
Die Community brachte kurzerhand zwei nennenswerte Forks hervor.
Rocky Linux
Rocky Linux ist ein von Gregory Kurtzer initiierter CentOS-Fork. Kurtzer hatte 2002 ebenfalls das CentOS-Projekt ins Leben gerufen, es aber nach einigen Unstimmigkeiten innerhalb der Community einige Jahre später verlassen.
Nach der Ankündigung von Red Hat und CentOS im vergangenen Dezember thematisierte er einen denkbaren Fork. Es entstand eine rasch wachsende Community, als Projektnamen wurde Rocky Linux gewählt. Analog zu CentOS stellt auch Rocky Linux einen 100% bug- und binärkompatiblen RHEL-Klon dar. Neben x86_64- werden auch ARM-Systeme (aarch64) unterstützt. Weitere Architekturen, wie z.B. System Z oder POWER folgen möglicherweise später im Rahmen von dedizierten Teams (SIGs, special interest groups) innerhalb der Community.
Aus den Höhen und Tiefen des CentOS-Projekts hat Kurtzer gelernt. So wurde nicht direkt mit der technischen Entwicklung begonnen, sondern viel Zeit darauf verwendet, eine unabhängige und gemeinnützige Organisation (Rocky Linux Foundation) zu gründen sowie eine Communitysatzung und -struktur aufzubauen. Die Organisation darf nach Prüfung durch die Linux Foundation offiziell den Namen Linux tragen.
Rocky Linux ist spendenfinanziert, ein Großteil der Build-Infrastruktur wird auf AWS (Amazon Web Services) betrieben. Derzeit wird das Projekt von 5 Firmen finanziell und infrastruktur-technisch unterstützt.
Eine erste Vorabversion von Rocky Linux 8.3 ist am 01.05.2021 erschienen – diese wird jedoch noch nicht für die Produktion empfohlen. Eine stabile Version soll noch im gleichen Quartal folgen.
AlmaLinux
AlmaLinux ist ein weiterer CentOS-Fork, hinter dem die US-amerikanische Firma CloudLinux steht. Der Anbieter ist Distributor und Hoster zugleich und kann auf jahrelange Erfahrungen im Enterprise-Umfeld zurückgreifen. Mit CloudLinuxOS wird bereits ein für das eigene Hosting optimierter kommerzieller RHEL-Fork gepflegt.
AlmaLinux ist ebenfalls 100% bug- und binärkompatibel zu RHEL, steht derzeit aber lediglich für die x86_64-Architektur zur Verfügung. Die erste stabile Version erschien bereits am 30.03.2021. Ein Migrationsskript erleichtert den Umstieg von CentOS, RHEL und Oracle Linux.
CloudLinux gibt an jährlich eine Million US-Dollar in die Entwicklung zu investieren, für Anwender soll AlmaLinux „immer kostenlos“ sein.
Vergleich
Technisch betrachtet ähneln sich die drei Distributionen wie erwartet. Unterschiede gibt es vor allem in den unterstützten Architekturen sowie die Anzahl der Spiegelserver. Während nicht bekannt ist, wie groß Red Hats CDN ist, umfasst AlmaLinux bereits 70 Spiegel – da Rocky Linux erst vor kurzem veröffentlicht wurde, gibt es erst einen. Das dürfte sich jedoch in der Zukunft schnell ändern.
Alle drei Distributionen verhalten sich exakt gleich während und nach der Installation – der einzige auffällige Unterschied sind die ausgetauschten Logos.
Die folgende Tabelle zeigt die wesentlichen Unterschiede und Gemeinsamkeiten der jeweiligen Distributionen:
RHEL 8.3 | Rocky Linux 8.3 RC | AlmaLinux 8.3 | |
Architekturen | x86_64, aarch64, s390z, ppc64 | x86_64, aarch64 | x86_64 |
Kernel-Version |
4.18 |
||
Verfügbare Pakete (Core) | ~6300 |
~5300 |
|
Module | BaseOS, AppStream, HA, Resilient Storage | BaseOS, AppStream, HA, PowerTools, Resilient Storage | |
Mirror | unbekannt | 1 | ~70 |
Migrationsskript | von CentOS 7/8, Oracle Linux in Arbeit | in Arbeit | CentOS, RHEL, Oracle Linux |
Kommerzieller Support | Ja | noch unklar | in Arbeit |
Derzeit finden sich noch einige Fehler im Rocky Linux-Bugtracker, die den alltäglichen Einsatz beeinträchtigen könnten. So wissen beispielsweise VMware ESXi und Ansible noch nichts mit Rocky Linux anzufangen und sie erkennen keine Red Hat-artige Linux-Distribution. Entsprechende Fixes wurden jedoch bereits von der Community eingereicht und müssen nur noch von den Herstellern akzeptiert werden. Auch scheinen manche Paket-Abhängigkeiten noch nicht korrekt übernommen worden sein.
Alternativen
Über den Tellerrand zu schauen kann nie schaden, so gibt es neben den oben genannten Optionen noch weitere Alternativen. Die Auswahl ist mit ca. 300 aktiv gepflegten Linux-Distributionen groß – die folgenden Kriterien dürften für CentOS-Benutzer wichtig sein:
- aktive Pflege durch Community oder Hersteller
- stabile, getestete Software-Pakete sowie planbare Releases
- idealerweise ebenfalls RPM-Paketformat um eine Migration zu erleichtern
- kostengünstig
Oracle Linux
Mit Oracle Linux pflegt bereits seit 2006 eine eigene Linux-Distribution auf Basis von RHEL. Diese bietet einen optionalen Kernel mit zahlreichen Anpassungen für Oracle-Produkte. Auch der hauseigene Ansatz zur Installation von Kernel-Patchen ohne die Notwendigkeit eines Neustarts (kSplice) wird angeboten. Ein Migrationsskript erlaubt die leichte Migration von CentOS.
Zu den Vorteilen gehören die Binärkompatibilität zu RHEL aufgrund der gleichen Code-Basis und der geringere Migrationsaufwand. Derzeit steht Oracle Linux ausschließlich für x86_64- und aarch64-Systeme zur Verfügung.
openSUSE
openSUSE wird seit 2006 von der gleichnamigen Community entwickelt. Das Board besteht aus 6 Mitgliedern, von denen lediglich 2 zu SUSE gehören. Die Distribution erscheint in zwei Editionen.
So richtet sich Leap vor allem an Benutzer:innen, die eine möglichst stabile Umgebung benötigen. Ab Version 15.3 kann Leap als Upstream zum kommerziellen SLE (SUSE Linux Enterprise) angesehen werden. Seit geraumer Zeit wird auch die Migration von openSUSE zu SLE vom Support abgedeckt. Tumbleweed ist die Rolling Release-Variante von openSUSE. Diese richtet sich vor allem an Entwickler:innen, die stets aktuelle Paketversionen benötigen.
Beide Editionen verwenden mit RPM das gleiche Paketformat wie CentOS. Der Umstieg erfordert jedoch Einiges an Umgewöhnung, da an einigen Stellen teils gravierende Unterschiede (YaST, AppArmor, Paket-/Dienstnamen) zu erkennen sind. openSUSE Leap-Releases werden in der Regel 18 Monate unterstützt, bis sie von einem neueren Service Pack abgelöst werden. Für die Aktualisierung bleiben 6 Monate Zeit.
Ubuntu
Ubuntu ist eine von der Community seit 2004 entwickelte Distribution. Sie basiert auf dem Debian-Paketformat und findet vor allem im Hosting, in Public Clouds und Container-Images eine sehr hohe Verbreitung.
Neue Versionen erscheinen alle 6 Monate (April und Oktober) und werden dann für 9 Monate unterstützt. Eine Ausnahme stellen die LTS-Versionen (Long Term Support), die alle zwei Jahre im April erscheinen – diese werden 5 Jahre lang unterstützt. Durch den Einsatz des Aufpreis pflichtigen Ubuntu Advantage sind dank ESM (Extended Security Maintenance) 5 weitere Jahre möglich. Da Ubuntu nicht subskriptionsbasiert erscheint, beschränken sich die Kosten auf Support und Wartung. Hier ist Ubuntu deutlich günstiger als RHEL und SLE.
Wenn es also um die Support-Laufzeit oder Kosten geht, ist Ubuntu eine validate Option. Eine Migration von CentOS ist jedoch schwieriger, da Distribution und Paketformat gänzlich wechseln. Eine größere Umgewöhnung ist nötig.
Vergleich und Fazit
Die folgende Tabelle vergleicht die vorgestellten CentOS-Alternativen:
Distribtion | CentOS Stream | Rocky Linux / AlmaLinux | openSUSE Leap | Ubuntu | Debian |
Major-Releases | – | ~3-5 Jahre | 1 Jahr | 6 Monate | 2 Jahre |
Wartung | fortlaufend | 10 Jahre | 18 Monate | 9 Monate bzw. 5-10 Jahre (LTS) | 3 Jahre, 5 Jahre (LTS) |
Paket-Format |
RPM |
DEB |
|||
Paket-Auswahl |
~14.000 (mit EPEL) |
~70.000 | ~90.000 | ~60.000 | |
Aktualität | +++ | – | ++ | ++ | – |
Stabilität | ++ | +++ | ++ | ++ | +++ |
Wer noch CentOS 7 verwendet befindet sich in der komfortablen Lage noch bis 2024 ausreichend Zeit für eine Migration zu haben. Für kleinere Produktiv-Umgebungen oder Software-Entwicklung stellt Red Hats Developer Subscription die einfachste Ablösung dar.
Mit Rocky Linux und AlmaLinux gibt es zwei direkte Abkömmlinge des CentOS-Projekts. Während AlmaLinux schon in einer stabilen Version zur Verfügung steht, muss Rocky Linux noch nachliefern. Die Hersteller-unabhängige und diverse Community hinter Rocky Linux klingt vielversprechend. AlmaLinux verfügt bereits über langjährige Erfahrungen mit der Distributionspflege.
Wer der Red Hat-Familie gänzlich den Rücken zuwenden möchte, findet mit openSUSE, Ubuntu und Debian denkbare Alternativen. Sofern besonderes Merkmal auf Stabilität gelegt werden soll und aktuelle Pakete nur von sekundärem Interesse sind, sollte sich Debian anschauen. Aktuellere und größere Paketauswahl bieten sowohl openSUSE und Ubuntu – letzteres bietet gegen Aufpreis auch bis zu 10 Jahre Unterstützung.
Über den Impact dieses Strategiewechsels, sowie zu verschiedenen Enterprise Linux Distributionen, sprechen unsere Experten John und Christian Stankowic im neuen SVA Podcast. Jetzt reinhören.
Links
- Offizielle Ankündigungen von Red Hat und CentOS
- Erweiterte Red Hat Developer Subscription
[1] Mit ”Kunden” sind in diesem Beitrag keine privaten Personen, sondern rechtliche Personen bzw. Unternehmen gemeint.