If nothing else, Red Hat has been extremely busy over the past year. Whether or not all of the activity will be good for Linux remains in question.
Since 2013, we’ve seen Red Hat embrace CentOS, the previously community-supported, open source equivalent of Red Hat Enterprise Linux, and we’ve seen the release of RHEL 7 and its hard push to systemd exclusivity. Now we’re seeing the new road map for Fedora, which will come in three different flavors with Fedora 21. These are all major steps in a very short time period, and frankly, some of these moves seem awkward at best.
Starting with Red Hat's embrace of CentOS, I'm of the mind this is ultimately a good development, if also inevitable. CentOS is widely used for Linux servers of every conceivable type, from tiny VPSes to big physical boxes. Often it can be found accompanying RHEL installations in the same infrastructures. Savvy groups use RHEL when and where they need Red Hat support, and CentOS for everything else, such as dev environments, noncritical systems, and so on. Even savvier groups eschew RHEL altogether and use only CentOS because they don’t need the support. This is how big server back ends have been built and operated for years now.
Then there’s Fedora and the recent announcement that it will henceforth ship in workstation, cloud, and server versions. Fedora has been Red Hat’s unstable proving ground for many years, offering a far faster refresh cycle and package inclusion at the expense of stability and compatibility. It is and always has been a sandbox distro. It’s also well known as a desktop distribution, competing with Ubuntu, Debian, Mint, and other desktop-centric distributions. For Linux desktop users who also run RHEL or CentOS, opting for Fedora is a natural move; the underlying architectures are very similar, unlike Debian-based distributions.
That’s where Fedora stays: as a desktop and dev sandbox. It has never been seriously considered as a production server operating system. The workstation focus seems obvious, as it's historically been a Fedora strength.
But with Red Hat announcing that Fedora will be offered in workstation, cloud, and server flavors, I have to wonder about the ultimate goal. Does Red Hat want Fedora to eclipse CentOS as the favored RHEL-like community server distribution? Is Red Hat aiming Fedora Server at small-business workloads? Why a cloud version? Most folks building out cloud server architectures definitely do not want unstable packages floating around, and the idea of using Fedora for production cloud workloads is highly questionable at best.
Given these three splits in Fedora — complete with a bunch of GUI-driven, small-business-level system and server management tools on the server version — Red Hat seems to be trying to appeal to everyone and everything, while lacking focus on any single strength. The bedrock of Red Hat has always been on the server side, with sufficient success to necessitate the creation and maintenance of CentOS by the server community. Supporting Fedora and having several different options is not a bad idea, but too many, aimed in so many directions, can negatively affect the brand.
Linux users are in a twist right now. We're facing significant changes within the mainstream commercial and community distros themselves, on top of dealing with the rapidly growing container frameworks, virtualization, and cloud services, all of which can run on one form of Linux or another.
Further, a significant number of Linux use cases don’t require what we think of as a Linux distribution. We’re moving away from the kitchen-sink approach with Linux servers, where every package that can be available is available, heading straight into specialized, purpose-built, minimal server instances that appear and disappear as loads dictate. There’s not a lot of room for either a general-purpose server or a desktop-centric distribution.
Perhaps that’s Red Hat’s goal — throw it all out there and see where things wind up. RHEL isn’t going away anytime soon, but if we are going to witness an uptick in Linux desktop usage, it could as easily be Fedora as any other, especially in the context of developer adoption. On the cloud front, I think we’re still missing the right solution for the next few years of cloud computing, and Fedora for cloud services will likely be a nonstarter.
I expect Linux server philosophy will undergo many changes in the next few years, along with gains made by distribution angles similar to CoreOS. This leads me to the most interesting piece of the Fedora announcement — the fact that apparently the working groups for each new Fedora flavor can make architectural decisions that do not impact the other flavors.
This means that the cloud or server group could decide to abandon desktop packages altogether and release a truly server-only distro, effectively eliminating all kinds of stability issues that might be caused by the inclusion of hundreds of desktop packages. That might be a compelling reason to look at Fedora for real server work, depending on how it's managed. It's an interesting speculation, to say the least.