Open source enterprise software provider Red Hat received a ton of derision last year when it shifted its CentOS Linx distribution to a rolling release distribution. After that happened, users everywhere complained, companies (such as cPanel) pulled support, and a number of new 1:1 binary compatible replacements (such as AlmaLinux and Rocky Linux) were born.
And yet, CentOS Stream continues moving forward. Earlier this month, Red Hat released version 9 of CentOS Stream, which happens to coincide with the CentOS 8 end of life (ergo, the end of CentOS as we know and love it).
But never fear, Red Hat is here with CentOS 9 Stream.
Effectively how the release cycle works is this: New features will be tested on Fedora, then released in parallel on both CentOS Stream and, Red Hat Enterprise Linux (RHEL), which is the company’s flagship enterprise-ready Linux distribution.
In Red Hat’s words:
CentOS Stream is a continuous-delivery distribution serving as the next point-release of RHEL. Before a package is formally introduced to CentOS Stream, it undergoes a battery of tests and checks–both automated and manual–to ensure it meets the stringent standards for packages to be included in RHEL. Updates posted to CentOS Stream are identical to those posted to the unreleased minor version of RHEL. The aim? For CentOS Stream to be as fundamentally stable as RHEL itself.
Let’s try to explain this a bit better by using the current releases.
Fedora 34 was the same code base as RHEL 9 and serves as the starting point for CentOS 9 Stream. As packages are updated, pass stringent testing, and meet Red Hat standards for stability, they are then pushed into CentOS Stream and the nightly build of RHEL. In other words, what is available in CentOS stream was based on the stable version of Fedora and will eventually make its way into future releases of RHEL.
It’s confusing, so let’s just say CentOS Stream and RHEL Nightly are (outside of some branding) the same thing.
For those that prefer a visual aid, Red Hat offers that shown in Figure 1.
What’s in CentOS 9 Stream?
The big thing with CentOS 9 Stream is that it’s kind of the polar opposite of what CentOS once was. In the past, CentOS was all about stability. Because of that, packages were very slow to upgrade to new releases. In fact, you would often find packages that were a few releases old. That was done by design, to keep the operating system as absolutely rock-solid as possible. And it worked. CentOS was always amazingly stable.
On the contrary, CentOS Stream is all about cutting edge. You’ll have the latest versions of most of the software you depend on. For example, CentOS 9 Stream ships with the GNOME 40 desktop. Although that is one release behind, it’s still farther ahead than what CentOS would have otherwise been.
Other additions include:
- PHP 8.0
- Python 3.9
- MariaDB 10.5
- Nginx 1.20
- GCC 11.2
As for the kernel? A quick run of
uname -r reveals my newly-installed instance of CentOS 9 Stream is running kernel 5.14.0-34.el9.x86_64.
CentOS Stream also ships with Podman version 3.4.3 installed, so out of the box you’re ready to go for container work. And for those who want to manage their installation via the Cockpit web UI, you’ll still need to enable it with the command:
sudo systemctl enable --now cockpit.socket
Once you’ve enabled it, point a browser to https://SERVER:9090 (where SERVER is the IP address of your CentOS 9 Stream server) and log in with the root user credentials. After logging into Cockpit, you’ll find Podman support is already rolled in (Figure 2), so you can immediately start managing your containers with this outstanding GUI.
Via Cockpit, you should notice (upon installation) that everything is already up to date (Figure 3).
This is a pleasant side effect of using a rolling release distribution, as you don’t have to immediately turn around and do a system upgrade the second your installation is done.
Should You Use CentOS 9 Stream?
This is an important question that’s on the mind of many Linux admins and businesses. Here’s the answer.
If you’re looking for a testbed to use for development and intend on deploying to an upcoming release of RHEL, then CentOS 9 Stream is exactly what you want. If, on the other hand, you want an OS for production environments that must be rock solid stable, then CentOS 9 Stream is probably not your best bet. For those environments, you should jump right to Red Hat Enterprise Linux or go with one of the alternatives, such as AlmaLinux or Rocky Linux.
Either way, I’ve found CentOS 9 Stream to be pleasantly solid and just as familiar as CentOS ever was. The difference is that packages are much newer and support isn’t as lengthy. Would I deploy CentOS 9 Stream to a production environment? No. Would I opt to use it for an RHEL-based development environment? Without hesitation.
If you’d like to dive into the stream, download a copy of CentOS 9 Stream now and spin it up.