Open Source Entwicklung XML

CentOS Stream - Was, warum und wie?

Senior IT-Consultant Daniel Schier macht sich darüber Gedanken, wo CentOS herkommt, warum Red Hat damit eine andere Philosophie fährt und wie man "CentOS Stream" im Red Hat-Kosmos einordnen kann.

Während Microsoft mit dem Betriebssystem Windows den Desktop-Markt beherrscht, stellt sich die Welt im Bereich der Serverbetriebssysteme komplett andersherum dar. Hier beherrschen Linux-Distributionen den Markt. Allein 100% der Top-500-Supercomputer werden auf dieser Basis betrieben. Zu den populären Linux-Distributionen im Unternehmenseinsatz gehören Red Hat Enterprise Linux (RHEL), CentOS, SUSE Linux Enterprise, OpenSUSE Debian und Ubuntu.

Als Red Hat Advanced Partner möchten wir gern auf ein paar Neuerungen aus dem Hause Red Hat hinweisen, die sich insbesondere an Anwender richten, welche auf die Enterprise-Distribution RHEL und Community-Distribution CentOS setzen.

CentOS Linux ist jetzt CentOS Stream
Am 8. Dezember 2020 kündigt das CentOS-Projekt in seinem Blog an: "Die Zukunft von CentOS Linux ist CentOS Stream." In der Zwischenzeit sind viele zusätzliche Informationen veröffentlicht worden und das Bild ist klarer geworden.

Was ist passiert?
In einem Blog-Beitrag hat das CentOS-Projekt angekündigt, dass der Fokus von CentOS Linux zu CentOS Stream verschoben wird. Gleichzeitig wurde damit auch das frühzeitige Support-Ende für CentOS Linux verkündet. Red Hat hat sich parallel dazu auch im eigenen Blog geäußert. Inhaltlich geht es in den beiden Beiträgen um die folgenden Punkte:

  • CentOS 8 Linux EOL verschoben (12/2021)
  • CentOS 7 Linux EOL unverändert (06/2024)
  • CentOS 8 Stream erhält Community Support für die Laufzeit von RHEL 8

Das CentOS-Projekt hat kurz nach der Veröffentlichung der Blog-Beiträge auch ein FAQ eingerichtet und stand über Twitter, IRC, Reddit, Mailing Lists mehrere Tage für Fragen zur Verfügung.

Was ist CentOS Stream?
Je nachdem wie man liest und welche Quellen man hinzuzieht, ergibt sich ein anderes, teils gegenläufiges, Bild davon, was CentOS Stream ist. Worte wie "Beta", "Rolling Release" oder "Development Branch" werden genutzt. So richtig zutreffend ist keines davon und doch passen alle. Um zu verstehen, was CentOS Stream ist, lohnt sich ein Rückblick.

Ein Blick in die Historie
Wir möchten an dieser Stelle einen Beitrag zur Aufklärung leisten und geben einen kurzen Einblick in die Geschichte.

2014 bis 2019
Im Jahr 2014 verkünden Red Hat und CentOS den Zusammenschluss. Red Hat hat das CentOS-Projekt gekauft. Die meisten Kernentwickler bekamen die Möglichkeit, für Red Hat tätig zu sein und Vollzeit an CentOS zu arbeiten. In den folgenden Jahren hat sich das CentOS-Projekt nicht grundlegend geändert.

CentOS Linux war weiterhin ein binär kompatibler Klon von Red Hat - quasi ein Bug-per-Bug-, Feature-per-Feature-Replikat. CentOS-Anwender erhalten so lange Unterstützung, wie Red Hat Updates für die jeweilige RHEL-Ausgabe zur Verfügung stellt.

Fedora Linux als "Spielwiese" von Red Hat stellt weiterhin die Upstream Community-Distribution von Red Hat Enterprise Linux mit Red Hat als Hauptsponsor des Projektes dar. Neben Red Hat-Mitarbeitern tragen auch Tausende von Entwicklern aus der Open Source-Community zum Fedora-Projekt bei - ein ideales Testszenario für Funktionen, die folgend in RHEL integriert werden.

2019 bis 2021
2019 wurde CentOS Stream angekündigt und veröffentlicht. Damit einher ging die Botschaft, dass CentOS stärker in die RHEL-Entwicklung einbezogen werden soll. CentOS Stream wird hier schon als Midstream bezeichnet. Es ergab sich also das Konstrukt:

  • Fedora = Upstream (neueste Software, schnelle Releases)
  • CentOS Stream = Midstream (zwischen Fedora und RHEL, stabile API/ABI)
  • Red Hat Enterprise Linux = Downstream (Enterprise Support, viel Testing)
  • CentOS Linux = Downdownstream (rebuild der RHEL Sources)

Das Problem an diesem - und auch dem Konstrukt zuvor - ist, dass Bug-Reports, Feature-Requests oder andere Entwicklungsarbeit aus CentOS Linux fast nie den Weg zurück in Fedora oder RHEL gefunden haben. Ferner haben Patches, auch Security-Patches, teilweise Wochen gebraucht, um in CentOS Linux bereitzustehen.

2021+
Mit der Ankündigung vom Dezember 2020 wird der Prozess nun aufgeräumt und es wird eine klare Richtung geschaffen. Mit diesem Konstrukt wird CentOS Linux als Klon der RHEL-Quellen hinfällig.

Auflösung
Doch was bedeutet das nun genau? Ist CentOS Stream nun eine Beta für RHEL? Was hat es mit dem Rolling Release auf sich?

Ganz knapp, "Rolling Release" wird hier oft falsch gewertet und wird sehr häufig mit "top aktuell" gleichgesetzt. Viele mögen dabei an openSuSE tumbleweed oder Arch Linux denken, doch CentOS Stream hat nichts mit diesen Rolling Releases gemeinsam. Viel eher verhält es sich so:

  • CentOS Stream wird aus Fedora generiert
  • der neue Branch wird versioniert (z.B.: CentOS 8 Stream)
  • der neue Branch hat keine Minor Releases
  • es werden regelmäßig (bis zu täglich) neue Patches eingepflegt
  • CentOS 8 Stream wird so lang gepflegt wie RHEL8 unter "Full Support" steht



Kann man CentOS 8 Stream jetzt als Beta für RHEL bezeichnen? Ja und Nein. Klar ist, dass alle Patches in CentOS Stream zuerst sind. Es finden jedoch nur Patches den Weg in CentOS, wenn sie auch qualifiziert für RHEL sind. Red Hat verspricht hierbei "alle QA-Prozesse für RHEL" auch bei CentOS Stream einzusetzen. Hier unterscheidet sich CentOS Stream gravierend von einer Beta. Anstelle einer nur teilweise getesteten Vorschau erhält man eher "RHEL als CI/CD".

Wie im DevSecOps-Kontext verankert folgt man also dem Prinzip: "Entwickle ein bisschen, teste ein bisschen, veröffentliche ein bisschen."

Im Grunde verschiebt Red Hat die bisher "hinter verschlossenen Türen" vollzogene RHEL-Entwicklung in die Öffentlichkeit und erlaubt jedem mitzugestalten. Wie sich das in der Realität anfühlt und welche Probleme es hier bei der Umstellung geben wird, bleibt abzuwarten.

Anhand der anderen Red Hat-Tools ist jedoch zu sehen, dass Red Hat Erfahrung mit diesem Modell hat. Software wie Ansible, Podman, OpenShift oder OpenStack werden bereits nach diesem Modell entwickelt und finden sowohl in der Industrie als auch der Community ihren Zuspruch.

No Cost Enterprise Linux
Ab Februar 2021 bietet Red Hat mit einem interessanten No Cost-Angebot (CentOS)-Anwendern an, die Enterprise Linux Distribution für bis zu 16 Installationen kostenfrei und produktiv zu nutzen (small production workloads). Dies umfasst sowohl Anwender mit einem Red Hat-Developer Account, als auch gesamte Entwicklerteams über den bestehenden Unternehmens-Account. Egal ob in der Private Cloud oder bei Hyperscalern wie Azure oder AWS, es entstehen keine zusätzlichen Lizenzkosten. Ist ein vollständiger Support erforderlich, so kann dieser über ein Upgrade hinzugebucht werden.

Ein wohl erster von einigen weiteren Schritten, der durch Red Hat jüngst angekündigt wurde. Damit lösen sich sicherlich nicht alle Use Cases, allerdings dürfen wir gespannt sein welche weiteren Maßnahmen uns erwarten.
 

Quellen:
CentOS Blog: https://blog.centos.org/2020/12/future-is-centos-stream/
CentOS Blog: https://blog.centos.org/2020/12/centos-stream-is-continuous-delivery/
CentOS Stream FAQ: https://wiki.centos.org/FAQ/CentOSStream
Red Hat Blog: https://www.redhat.com/en/blog/centos-stream-building-innovative-futureenterprise-linux
Red Hat FAQ: https://www.redhat.com/en/blog/faq-centos-stream-updates?source=bloglisting&page=2
Fedora Magazine: https://fedoramagazine.org/fedora-and-centos-stream/
Red Hat Blog: https://www.redhat.com/en/blog/transforming-development-experience-withincentos
Red Hat Blog: https://www.redhat.com/en/blog/new-year-new-red-hat-enterprise-linuxprograms-easier-ways-access-rhel?sc_cid=701f2000000tyN6AAI

Autor

Daniel SchierSenior IT-Consultant
Daniel Schier