Zit Seng's Blog

A Singaporean's technology and lifestyle blog

Jumping Into CentOS 7

_DSC0554Red Hat Enterprise Linux (RHEL) 7 was released about one month ago. The community version of that, CentOS, unveiled its version 7 this week. Many enterprise Linux users might perhaps not notice because, well, we like our servers left alone and don’t want to need to pay any attention to them. Not surprising, thus, if you had not noticed RHEL 7 and CentOS 7 are now out in the wild.

My home PC runs on Ubuntu. I haven’t even made the upgrade to 14.04, so I’m surprised I’ve jumped into testing out CentOS 7. The circumstances are that we’re going to push out a cluster of CentOS 6.5 based servers in the next few weeks, and it didn’t make sense to go live with something that already has a successor in place.

Yeah, we need to invest time and resources to check out CentOS 7, with the view to go into it, because once an enterprise server rolls into production, we’re probably not going to think about an upgrade in a long long time. Maybe not even before the physical server hardware dies or gets too old and needs to be decommissioned.

The CentOS 7 release notes list the following notable changes:

  • Kernel updated to 3.10.0
  • Support for Linux Containers
  • Open VMware Tools and 3D graphics drivers out of the box
  • OpenJDK-7 as default JDK
  • In Place Upgrade from 6.5 to 7.0 (as already mentioned)
  • LVM-snapshots with ext4 and XFS
  • Switch to systemd, firewalld and GRUB2
  • XFS as default file system
  • iSCSI and FCoE in kernel space
  • Support for PTPv2
  • Support for 40G Ethernet Cards
  • Supports installations in UEFI Secure Boot mode on compatible hardware

It’s really good to hear support for in-place upgrade from CentOS 6.5 to 7.0, albeit not yet available at this time. This will definitely be much appreciated by system administrators, considering that in the past, upgrades across major versions were not supported and had basically required a fresh operating system installation.

The other neat thing I was looking forward to is the support for Linux Containers. I was thinking about OpenVZ, which is a lightweight operating system level virtualisation. This is essentially how hosting service providers offer Virtual Private Server services (usually using Virtuozzo), and in many ways can be likened to Solaris Containers (also often referred to as Zones).

Unfortunately, the Linux Containers referred to here is Dockers. Oh well. OpenVZ is not quite the same as Linux Containers. They are said to have contributed heavily to Linux Containers in the upstream kernel. Now we’ll have to evaluate to see how Dockers will work for our purposes at work.

Many other little details have changed. Much more so than I’d have expected in an enterprise operating system. Already mentioned above are three key components: systemd, firewalld and GRUB2. The booting process has changed. Indeed, I was initially struggling with PXE EFI boot and Kickstart setup, because all those have changed in a bunch of little ways too.

Can you believe it, kernel arguments like repo have been renamed inst.repo? What was wrong with leaving it as repo?

On my server, ethernet interfaces have been renamed. Like eth0 has become enp5s0f0. Really? I kinda preferred eth0.

They’ve also decided to drop support for MD5. So, now you cannot work with LDAP servers that use MD5 signature algorithms. Good thing you can add it back, if you really need to. Check this Red Hat Bugzilla.

Of course, just to be clear, all these complaints about CentOS really stem from RHEL. The CentOS project is just an innocent repackager of stuff from RHEL.

Are you ready to jump into CentOS 7? If you’re rolling out a new project now, this can be a great opportunity to start the learning process. There’s going to be quite a bunch of things to figure out, for sure. While we can all hope that the in place upgrade, when ready in future, will work great, it’s always a good thing to have a fresh start.

Leave a Reply

Your email address will not be published. Required fields are marked *

View Comment Policy