Ubuntu 18.04 LTS vs CentOS 8 for Servers
Not all Linux distributions are created equally. If you have some confusion about whether to go with Ubuntu or take a chance on CentOS, we're here to provide some clarity.
Although both share the same open source core, which is flexible and scalable, there are major differences in performance, flexibility, and other areas that could become dealbreakers for some.
In this guide, we’ll take a look at the fundamental differences between the two systems, in order that you can decide which is right for your environment.
Before we look at the specifics of Ubuntu and CentOS, it’s important to recognize that whilst either system can form the core of your server stack, the way in which this stack operates will also depend on the software that you install.
An excellent example of this is your server platform. Apache and NGINX are the most popular server platforms, and either can be installed on either Ubuntu or CentOS. You should be aware that there are significant differences between the two servers: not least that Apache works with Linux-based servers while NGINX can accomodate 10,000 concurrent users.
Whilst we do not have time, in this guide, to cover all of the software available for each platform, there are some large-scale differences between them that affect the way they operate. So, without further ado, let’s get to those.
Integration
Two Great Platforms, Different Solutions
Sometimes, your computing ROI is easy to calculate. With operating systems, it may take some time to figure out which is worth the effort.
CentOS is the free version of Red Hat Enterprise Linux (RHEL).
The infrequent release and support cycles are the same, which makes it a great choice for enterprises with fewer resources and less need for upgrades.
On the other hand, Ubuntu is great for developers and enterprises with more resources and dedicated IT teams.
It's built upon the Debian architecture, and Ubuntu is considered a little more user-friendly due to its popularity with desktop users and wide support.
Both of these operating systems have proven themselves in a server environment, but they have different support bases, capabilities, and security protocols including HTTP and HTTPS. Here, we'll cover the differences between Ubuntu 18.04 LTS and CentOS 8 in five major categories.
Corporate Support
Ubuntu is the child of Canonical, and they put a lot of effort into supporting each distro.
Though the frequent release schedule can be disruptive for some, the company works with a number of hardware partners to provide support, and there is a new official support mechanism for each new Ubuntu LTS.
There's also a huge community and wide documentation to accompany every update.
In contrast, CentOS support largely ends with the few resources and limited information supplied by RedHat with its distros.
There's also a much smaller community and limited documentation. Users are saved by the fact that CentOS developers work hard to make each release as exact a copy of the current RHEL distribution as possible, which makes any documentation transferable.
Releases of Ubuntu occur often, sometimes two per year, which means there is less testing between releases. This lends an air of instability and insecurity that can make some uncomfortable. However, every fifth release is considered a long-term release and comes with a matching support contract.
CentOS takes their time to work out any bugs and handle vulnerabilities between releases, which means they're released less often; usually, releases occur every four years, right after a new RHEL release. It also means they tend to be more secure and have fewer problems out of the box.
This makes it a great choice for businesses. However, there is no support contract available with CentOS other than relying on the 10-year support available with new RHEL releases.
Package Management
Although both are Linux-based, that's where the similarities end. Ubuntu uses the Advanced Package Tool (APT) package management protocol that's mandatory for all Debian distros. Although it's a very powerful and effective package management tool, the controls force admins to manually import keys and update the repositories, which can be massive.
The package manager used by CentOS is RedHat's Yellowdog Update Manager (YUM). Users who prefer this combination cite speed and directness as the primary reasons. All updates are automatic with each new release.
With the APT and Ubuntu package, systems upgrades and new software are easily managed between major releases. With CentOS and YUM, a clean install is required for upgrades.
Security
One of the reasons that Linux-based servers are so popular is their speed and efficiency.
Although they're built upon open source technology, they're also considered very secure. They are also easy to integrate.
There are differences, though. Due to the slow release schedule and detailed testing, CentOS is considered the more secure of the two straight out of the box.
Because Ubuntu is released on a faster cycle, it tends to be less secure without some custom tweaking and frequent patches. However, you have a lot more support and assistance to overcome any obstacles.
In opposition to CentOS' automatic and unattended updates, some Ubuntu upgrades must be conducted manually unless you enable the unattended-upgrades package. This can be risky, so you should also install and enable the apt-listchanges tool to perform updates and change monitoring.
Compatibility
Both operating systems have a wide range of applications and compatibility with most web hosting services. However, those relying on cPanel should rule out Ubuntu right away.
It isn't compatible with cPanel, but there are some alternatives that will work and offer the benefit of additional security features. CentOS fully supports cPanel/WHM.
One drawback of infrequent CentOS releases is compatibility with newer software and applications. If you're running a previous distro of CentOS, you may have to install and configure newer apps manually, and you won't get any support from RedHat in the meantime.
Ease of Use
In general, Ubuntu is considered the best choice for those who have little experience with servers and hosting.
That's in part due to its familiarity with desktop users and partly because it has so much documentation and support attached.
The Bionic installer is one of the best features. It was developed with the aim of getting users up and ready fast, even if they have little tech expertise.
CentOS has a fairly steep learning curve due to fewer users and lack of documentation. The installer is RedHat's Anaconda.
Just as much work went into perfecting this tool as Ubuntu's installer, but it's better for experienced admins who want faster, custom configuration. However, it does allow you to configure your server and storage when you install it because the necessary software is bundled with the installation.
Final Thoughts
Basically, if you're looking for a more secure, hassle-free OS, CentOS is a good choice for you. Those who don't mind a system that's powerful and feature-rich, but has a certain level of instability and requires more hands-on care, might consider Ubuntu.
Our goal is to provide you with the facts you need to make an informed decision about what's best for your computing environment and comfort level. If you're still unsure which is best, you can always choose an inexpensive managed hosting service and experiment a little with professional support in place.