And Introducing…

🌿 Budding
In

The inaugural content appeared on this site on 6th February 2021, but I have not publicised the site’s existence until now. There’s a reason for that.

In December 2020 Red Hat (now owned by IBM) announced that the Linux distribution CentOS was going to change course. CentOS has always been a ‘downstream’ version of Red Hat Enterprise Linux (RHEL). This means that after a new release of RHEL, a new version of CentOS based on that stable release is created. In 2019, Red Hat announced CentOS Stream, which is an ‘upstream’ release. Its features preview what is coming in the next RHEL release. In general, upstream releases are great for trying new stuff out ahead of time so you won’t be caught flat footed when it arrives in the main release. Meanwhile downstream releases are great for… stability. Because the changes introduced in CentOS have already made their way into a RHEL release. This is ideal for folks who want to run a production server on a stable OS that is not the pay-for-support RHEL itself but very much like it. This has made CentOS a popular choice for small-to-medium businesses and geeky individuals like me.

Now, the change of direction announced by Red Hat is that CentOS is going away, in favour of focus only on CentOS Stream. What this means is no more stable, free, downstream release. This has made a lot of people rather unhappy. Not least those people who had invested time in CentOS 8 servers because the promised 10 years of support (2019-2028) has been brutally cut short — support runs out at the end of 2021! CentOS 7 users (that’s me) are perversely better off as the 2015-2024 support window remains in place. However, once I understood the implications I decided I should start looking around to see what was a sensible direction to move.

There are always alternate Linux distributions — Ubuntu is a popular one — but this can be a bit of a learning curve. Unix may be a standard (OK, POSIX is) and Linux may be a common thread, but an early computer scientist summed up the problem thus:

The nice thing about standards is that you have so many to choose from.

Andew S Tanenbaum

While you might cd to a directory on any Linux variant, the means of installing and updating software, the system processes, their configurations and controlling commands, and more will all vary. And then you get into different ‘flavours’ of tools that are common. In short, it’s probably more effort than a switch from Windows to Mac. I thought I was going to have to go with Ubuntu, but after a little searching online for “what to do about CentOS” (well, not exactly that phrase) a clear answer emerged. The Linux nerds were doing something about the problem.

In the same way that CentOS was born by taking the (open source) RHEL code and de-branding and repackaging, so would a new Linux be born. In fact, two new Linux distributions — Rocky Linux and AlmaLinux.

The difference between these two is who is involved. Rocky Linux was started by the same person who started CentOS. It is very much a community-based effort. AlmaLinux was started by the company CloudLinux. CloudLinux is a Linux tailored to the needs of cloud service providers and is itself based on RHEL. The company therefore have extensive experience of making a ‘clone’ of RHEL and saw an opportunity to get their name more widely known by building and sponsoring AlmaLinux. When I say sponsoring, I mean CloudLinux (the company) have built the product and will continue contributing time and money to it, but have also ensured that it has community support and involvement and the community can take over at any time if necessary. (For instance, if CloudLinux were later to “pull a Red Hat”.)

AlmaLinux

I liked the look of AlmaLinux as soon as I saw it (under the original name of Project Lenix). There seemed to be better organisation and communication about goals and progress as compared to Rocky Linux. Indeed, today, 30th March 2021 (North American time), saw the official release of AlmaLinux 8.3 (based on the current RHEL 8.3) a day before Rocky Linux are due to publish their release candidate.

And so to the point of this post, as hinted at in the opening paragraph. On 21 February 2021, while I was still thinking out and fettling and tweaking this site, I built a new CentOS 8.3 Virtual Private Server (VPS) alongside my original CentOS 7.9 VPS that I had created three years ago. I then migrated a few sites over to prove I had it running correctly, including this one. I decided not to publicise my new site until I was confident the new server wasn’t going to fall over in a screaming heap. The reason for building this new server using a soon-to-be-deceased operating system was that AlmaLinux promised early on to deliver a ‘one command’ method to migrate from CentOS 8.3 directly to AlmaLinux 8.3. Today, I ran that command.

I could, in theory, have upgraded from CentOS 7.9 to CentOS 8.3 on the original server but it seems that is not a standard or straightforward process and risked the whole thing going very wrong affecting all of my sites in one go. So I took the opportunity to apply best practices which I had not known three years ago to a new server build, while also standardising my multiple site setup and documenting the whole process in detail. I had to relearn a lot of steps from the original setup as well as adapt to the newer release. Next time I have to do this (please, no) I will have a lot better starting point.

So here we are! The new server did not turn into a smoking hole in the (virtual) ground and when I type in this command, I like what I see.

$ cat /etc/redhat-release
AlmaLinux release 8.3 (Purple Manul)