CentOS Stream: Rolling Release Model (Artikel 063)
Analyse des CentOS Stream Modells. Warum Red Hat den Fokus von Downstream-Rebuilds auf Upstream-Innovationen verschoben hat und was dies für die Produktion bedeutet.
# CentOS Stream: Das Bindeglied zwischen Fedora und RHEL
TL;DR / Management Summary Das klassische CentOS (ein 1:1 Rebuild von RHEL) wurde durch CentOS Stream ersetzt. Es ist kein stabiler Klon mehr, sondern das Upstream-Projekt für RHEL. Das bedeutet: Software landet in CentOS Stream, wird dort gehärtet und kommt dann erst in die nächste RHEL Minor-Version. Empfehlung: Nutzen Sie CentOS Stream für Development-Umgebungen und CI/CD-Pipelines, um Kompatibilität für kommende RHEL-Versionen zu testen. Für Produktion greifen Sie zu Rocky Linux, AlmaLinux oder dem originalen RHEL.
# 1. Einführung & Konzepte
Der Paradigmenwechsel.
Früher hieß die Kette: Fedora -> RHEL -> CentOS. Heute ist sie: Fedora -> CentOS Stream -> RHEL.
# Die Position in der Pipeline (Mermaid)
graph LR
A[Fedora: Innovation] -->|Freeze| B[CentOS Stream]
B -->|Certified / Stabilized| C[RHEL Minor Release]
C -->|Rebuild| D[Rocky / AlmaLinux]
subgraph "Development & Feedback Loop"
B
end
subgraph "Production & Stability"
C
D
end
# 2. Rolling Release vs. Fixed Release
Was bedeutet ‘Stream’?
CentOS Stream ist ein Rolling-Preview-Release. Es gibt keine Minor-Versionen (wie 8.1, 8.2). Stattdessen fließen Updates kontinuierlich ein.
- Stabilität: Höher als Fedora, da es bereits für RHEL vorgesehen ist.
- Aktualität: Neuer als das aktuelle RHEL Minor-Release.
- Support: Folgen dem RHEL-Full-Support-Zeitraum (ca. 5 Jahre).
# 3. Einsatzszenarien im Unternehmen
Wofür ist es gut?
# 1. Developer Workstations
Entwickler brauchen oft neuere Libraries, als RHEL sie bietet, wollen aber nah am Enterprise-Standard bleiben. CentOS Stream ist hier der ideale Mittelweg.
# 2. ISV / Software-Anbieter
Wenn Sie Software für RHEL schreiben, müssen Sie wissen, ob Ihre App mit RHEL 9.4 funktioniert, bevor RHEL 9.4 erscheint. CentOS Stream gibt Ihnen diesen Vorlauf.
# 3. CI/CD Testing
Nutzen Sie CentOS Stream Docker-Images in Ihrer Pipeline, um “Breaking Changes” frühzeitig zu erkennen.
# 4. Day-2 Operations: Management
Updates und Repositories.
# Update-Frequenz
Da CentOS Stream rollend ist, sind dnf update Durchläufe häufiger und umfangreicher als bei RHEL.
# System aktuell halten
sudo dnf upgrade
# Repo-Struktur
CentOS Stream nutzt die Repositories BaseOS, AppStream und Extras. Beachten Sie, dass es keine separaten “Minor”-Ordner auf den Spiegelservern gibt.
# 5. Troubleshooting & “War Stories”
Wenn der Stream über die Ufer tritt.
# Story 1: “Der Kernel-Mismatch”
Symptom: Ein Drittanbieter-Treiber (z.B. Nvidia oder ein Broadcom-WLAN-Modul) lässt sich nach einem Update nicht mehr kompilieren (DKMS Fehler).
Ursache: CentOS Stream hat einen neueren Kernel erhalten, für den der Treiber-Hersteller noch keinen Patch bereitgestellt hat (da RHEL diesen Kernel noch nicht hat).
Lösung: Im Bootmenü den vorletzten Kernel wählen und den Update-Zyklus für Kernel-Pakete pausieren (exclude=kernel* in dnf.conf).
# Story 2: “CentOS 8 vs. Stream Missverständnis”
Symptom: Ein Admin hat ein altes CentOS 8 (EOL) und versucht, Sicherheit-Updates zu laden, bekommt aber 404 Fehler. Ursache: Das klassische CentOS 8 wurde eingestellt. Lösung: Konvertieren Sie die Instanz zu CentOS Stream (oder Rocky Linux):
dnf install centos-release-stream
dnf swap centos-{linux,stream}-repos
dnf distro-sync
# 6. Fazit & Empfehlung
CentOS Stream ist ein hervorragendes Betriebssystem für die Entwicklung und das Ökosystem. Es bietet Community-Mitgliedern erstmals die Chance, aktiv Einfluss auf RHEL zu nehmen.
- Produktion: Nein (außer für sehr mutige Teams mit extremem Testing).
- Dev/QA: Ja, absolut empfehlenswert.
- Alternativen: Wenn Sie das “alte” CentOS Gefühl brauchen, nutzen Sie Rocky Linux.
# Anhang: Cheatsheet
| Aufgabe | Befehl |
|---|---|
| Version prüfen | cat /etc/os-release |
| Quellen auflisten | dnf repolist |
| AppStream Module | dnf module list |
| Rollback (Paket) | dnf history rollback <ID> |
| Kernel Version | uname -r |