CentOS is one of the most popular Linux distributions in the world. Over 16 years it has built a reputation for being a rock-solid, enterprise-grade operating system. On the 8th of December 2020 Red Hat killed it, leaving its users stranded and with an uncertain future.
If you're not sure what the deal is with Red Hat and CentOS then I made a article about it which will give you some useful background information. The short version is that CentOS is a Red Hat clone. It is built from Red Hat's source code, which being open source is fully available to anyone. As such, CentOS is basically a free version of Red Hat Enterprise Linux... just without the support from Red Hat, which is what you'd otherwise be paying for.
Red Hat and CentOS have enjoyed a symbiotic relationship over the years and in 2014 they officially joined forces, with Red Hat funding CentOS and taking a controlling interest on its governing board. That kind of makes the distinction between Red Hat and the CentOS project irrelevant when it comes to this sort of decision, because whether it's Red Hat or CentOS who announced it first it's ultimately Red Hat who control both of them.
When Red Hat Enterprise Linux 8 was released, CentOS 8 followed shortly after, and so did something new... CentOS Stream. Rather than being a rebuild of Red Hat's source code, CentOS Stream forms part of the development for Red Hat. It's basically an early preview of the next update. This is fine. It's good for developers to use as a test bed and provides a more direct mechanism for the CentOS community to contribute back to Red Hat. Remember: symbiotic relationship.
It came as a shock to everyone when the bombshell landed that traditional CentOS was going to be discontinued and in the future there would only be CentOS Stream.
CentOS and CentOS Stream serve two very different purposes. CentOS Stream is a rolling (or more accurately a continuous integration) release that previews the next update for Red Hat. By its very nature it is always a work in progress. CentOS on the other hand is built from the final release of Red Hat's source code, after the kinks have been worked out. That's the bit they killed, and people are not happy!
Killing off an extremely popular, free, and long-serving distribution that was started by the community was always going to upset people; but people aren't just upset - they are really angry! If Red Hat had simply said "You know what, guys? We've had a good run but CentOS 8 will be the last version." people wouldn't have liked it, but it would not have caused the massive backlash we're seeing now. The problem is that Red Hat didn't do that.
CentOS 8 was released in the back-end of 2019 with a promise of 10 years of support. This is standard for both Red Hat and CentOS, although for CentOS support just means software updates, not the ability to phone someone for help. The CentOS community was encouraged to move to CentOS 8 and expected it to remain supported until near the end of 2029. For organisations who moved to it, this was seen as a long-term investment. If the recent announcement had been "Sorry, this is the last version." that's sad, but nobody's losing their livelihoods. Instead they said "This is the last version... Oh, and also we're ending support for CentOS 8 at the end of 2021 instead."
Imagine you've just upgraded hundreds of servers to CentOS 8 and you're expecting them to have a rock solid platform for the next nine years, because Red Hat told you so, after all. And now they've suddenly turned around and told you the party's over and you've got one year to get off it.
To be clear: Red Hat don't owe us a fantastic operating system built from their code and maintained using their money, for free. People would have accepted that, but this U-turn pulled the rug out from under long-time supporters of the Red Hat ecosystem and for a lot of people it feels like a betrayal.
What's the proposed solution? Migrate to CentOS Stream or Red Hat Enterprise Linux. Centos Stream is free, but it's a bit of a moving target and it doesn't have the same ultra reliability that CentOS had. Don't get me wrong. I'm not saying CentOS Stream is bad or that it's necessarily unreliable; but it's not "Red Hat reliable". It's not "CentOS reliable". That was the entire point of CentOS!
Of course you could simply convert CentOS 8 to Red Hat 8. There's a script for it. Except now it's no longer free and you've got a whopper of a support cost that you didn't want or budget for. This is where it starts to feel a little bit sly. There are plenty of other free Linux distributions that people could switch to. If Red Hat had just stopped new versions of CentOS, if they hadn't also cut short the existing lifespan of CentOS 8 by 8 years, people would have had time to switch.
One year isn't a lot of time if you have a large infrastructure. There's a lot of testing and a lot of work that needs to be done, and it's not going to be cheap. CentOS is free; other Linux distributions are free; but time is never free. Who's going to do the migrations? Do you need to get in consultants? Do you need to hire more staff? Presumably, the staff who just did the migration to CentOS 8 already had plans other than sitting on their hands for the next year, and now they have this as well.
Of course they can just hand their money to Red Hat, instead; and they'll all keep working with just a little script. It feels dirty. So what's going on here? Red Hat have always been a friend of the community. Everyone loved them. They've been a rare example of a company that gives back more to the community than it takes in the first place... and that's still true. This incident aside, CentOS Stream is still free and Fedora is still free. Red Hat still provide every last scrap of their source code for free. But what caused the change of heart towards CentOS?
Well, the truth is that nobody outside of Red Hat knows for sure, but a number of people have noted that this announcement in 2020 follows the acquisition of Red Hat in 2019 by IBM. Did IBM decide that they didn't like sponsoring a free alternative their own investment and decided to squash CentOS? Maybe. We don't know for sure but for some people this move seems to confirm fears that they held at the time.
If this affects you, what can you do? Well, the obvious thing is that you could migrate to a different Linux distribution. For reasons I've already mentioned, though; that might not be practical. If your use case is not critical, CentOS Stream might be a good option. That's likely what I'm going to do with my HomeLab. I have some CentOS in there. I had some stability issues with Fedora, but CentOS Stream might be a good fit.
But what if you need rock solid reliability and you don't have time to plan a migration to a different ecosystem? It might be worth speaking to Red Hat, depending on your scenario. If you're using it for development, for a non-profit, or for personal use, you might be lucky. At this time the situation is still developing, but Red Hat have somewhat noncommittally mentioned these scenarios along with suggestions of reduced- cost, or no-cost options. I'll pop a link to latest information because this article is likely to be out-of-date by the time I publish it; but as I record this it's looking like anyone using CentOS commercially shouldn't expect to get Red Hat for free.
There are a couple of other options for you, though. Now, I know how this is going to sound. I think Oracle are going to pick up a few customers out of this. For those who don't know, Oracle Linux is another Red Hat clone. Like CentOS it's built from Red Hat's source code. There is a free version like CentOS; and a paid, supported version like Red Hat. It is binary compatible with Red Hat and CentOS, and by the time CentOS 8 goes end of life I guarantee there will be a script to convert it to Oracle in-place. They've already got one for CentOS 7.
The problem people have with Oracle Linux isn't a technical one. It's more of an ethical issue. CentOS and Oracle both use Red Hat's source code. Whereas centos and Red Hat exist in happy harmony, Oracle... not so much. That's because Oracle takes Red Hat's source code, uses it to build their own commercial product, and then they sell that product with support, undercutting Red Hat's price using their own code. They have even specifically targeted Red Hat's customers with it. Oracle are not doing anything illegal. Open source means anyone can use the code, but whilst it's not against the letter of the law it is against the spirit of open source. Open source is about give and take, whereas the perception is that Oracle is just ripping off other people's hard work.
A large portion of the open source community would never touch Oracle with a bargepole because of this; but what if you rely heavily on CentOS to keep your business afloat and you can't afford to pay for Red Hat? What if this is less about picking sides and more about putting food on the table? Are people going to stand with Red Hat on this and ignore the offer from Oracle given they may well feel that Red Hat just left them high and dry? So is that it?
Pay Red Hat or join the dark side? No. This is open source, remember. CentOS wasn't built by Red Hat. Not initially, at least. It was built by the community. The community aren't dead - they're still alive and kicking. Almost immediately when Red Hat broke the news that CentOS was finished, one of the original CentOS founders started a new project called Rocky Linux. Guess what? It's a Red Hat clone.
The intention here is clear: CentOS is dead, long live Rocky. Red Hat have already confirmed that they're happy for someone else to make a new distribution that uses their source code. They can't use the Red Hat or CentOS branding, but Red Hat aren't trying to renege on open source. Someone else can build a new CentOS, but Red Hat won't be funding it. Time will tell if Rocky becomes a success like CentOS. They've got a lot to do and not a lot of time to do it if they want to provide a migration path away from CentOS 8 for organisations that demand that bulletproof stability. Can they pull it off? With an original CentOS founder holding the reins they certainly have the right credentials. Keep an eye on this one.
But what about you? Are you affected by the end of CentOS? Comment below and let us know. Other people may find this article looking for answers, so why don't we see if we can help each other out by sharing what we're doing, how well it's going, and any issues we come across?