CentOS 8 and CentOS Stream, what’s new
CentOS is the Community ENTerprise Operating System. Derived from RHEL, the popular enterprise Linux distribution, CentOS aims to deliver the same experience for free (if you don’t need Red Hat’s support). CentOS 8 was released on the 24th Sep 2019, while RHEL 8 was released the 7h May 2019. Let’s take a look at what’s new and the new CentOS Stream.
CentOS 8, CentOS Stream “rolling preview” and UBI
Before diving in CentOS 8, let’s take a look at CentOS Stream. CentOS Stream is a new operating system that sits between CentOS and Fedora. While Fedora has historically been the base for RHEL, the gap between a stable operating system such as CentOS and a bleeding-edge distribution such as Fedora has never been filled until now.
CentOS stream is a rolling release-type operating system based on CentOS but not as bleeding-edge as Fedora. According to Red Hat, CentOS Stream is not intended for production use, it instead targets developers. Developers will be able to take a peek into what will be in future releases of CentOS/RHEL by using Stream.
Universal Base Images (UBI) are freely redistributable RHEL base images that replace some older images (such as minimal and standard). UBIs are available through Podman, it is currently unclear if CentOS will get UBIs.
CentOS 8 System-wide changes
CentOS 8 is based on Linux 4.18. You can read about what’s new about the Kernel here.
- CentOS 8 doesn’t inculde Docker, it uses Podman instead.
- CentOS installer now supports LUKS2 for disk encryption, LUKS2 is now the default format.
- Supported firmware can now be updated using fwupd (compatible devices here).
- XFS now supports up to 1024TiB (from 500TiB) and cow data extents.
- VDO has been introduced.
- NetworkManager now supports SR-IOV virtual functions.
- Audit 3.0 replaces audispd with auditd.
- Qemu-KVM 2.12 (details here).
- Stratis is available as a technology preview.
- OverlayFS has been introduced as a technology preview.
Enter the “Cockpit”
Cockpit is a simple-to-use interface to manage servers remotely. While traditionally server administration has been performed through ssh, the days ssh was the only tool are long gone. Cockpit aims to provide access to common administrative operations such as managing storage, logs, services through an easy-to-use web interface.
Software management: RPM, DNF and AppStream
RPM, the RPM package manager sees its first update in a while. RPM now checks the whole package for integrity rather than the payload before installing. The RPM format now supports AppStream. YUM4 is the new package manager, based on DNF technology it supersedes YUM3.
The real news is AppStream. AppStream introduces the “module” concept. Modules are user space components that can be updated without updating the whole operating system. This allows software that gets updates frequently such as PHP or Python, to be updated without using third-party repositories or having to wait the next major CentOS release. Modules will be available for languages, database and popular applications. You can have multiple versions of one module installed and running at the same time on the same operating system.
Becauase of AppStream only two repositories will be available: BaseOS and AppStream.
Security and Firewall
The new default packet filtering framework is nftables that replaces iptables. FirewallD will use nftables under the hood. OpenSSH has been rebased on version 7.8p1, this effectively removes SSH1 support. System-wide cryptographic policies are now applied by default. This means that the administrator will be able to specify security policies for a number of software such as Kerberos, IPSec, DNSSEC and TLS, all in one place.
Databases, languages and popular application updates
- Python3 is the default Python, replacing the outdated Python2.
- PHP 7.2 is the default PHP version replacing PHP 5.4.
- Node.js 10LTS has been introduced.
- Ruby 2.6.0 is the default Ruby version, replacing Ruby 2.0.
- Perl 5.26.
- OpenJDK 11 and 8.
Databases (and likes):
- MySQL 8.0 is now available.
- MariaDB 10.3 supersedes MariaDB 5.6.
- PostgreSQL 10 and 9.6.
- Redis 5.
Web servers (and likes):
- Apache 2.4.37 is the new default.
- Nginx 1.14 has been introduced.
- Squid 4.0.
- Varnish Cache 6.0.
- BIND 9.11.
- Pacemaker 2.0.0.
- LibreSwan 3.27.
- OpenSCAP 1.3.0.
- Rsyslong 8.37.0.
Version Control Systems:
- Git 2.18.
- Mercurial 4.8.
- Subversion 1.10.
CentOS 8 Desktop: GNOME & Wayland
CentOS 8 is the first CentOS to support and default to Wayland, replacing X.org. Gnome 3.28 is the new GNOME version, dated back in 2018.