CentOS 7: kernel

Along with all the requisite package and application upgrades that came along with CentOS 7, probably the largest upgrade was the move to the Linux Kernel 3.1 tree. This is a pretty big change for the Enterprise from the venerable 2.6 kernel version that was largely considered the most stable version ever. In this article, we are going to take a look at some of the key changes from the CentOS 6 kernel and the new CentOS 7 kernel.

Cool Additions
In addition to a lot of very important and enterprise focused changes to the new kernel tree, the 3.1 branch of the kernel brings along with it some of the features that we have had in the desktop space for some time (see the kernel versions in use on the Fedora, Debian and Ubuntu distributions). Here are a couple of the cooler additions to the kernel:

  • Support for “Near Field Communications: In short, this allows for simple wireless exchanges between two devices that are in very close proximity of each other (i.e. less than a couple centimeters). These NFC chips are found in a number of cell phones and is the technology we are starting to see some traction on in the retail space as credit card companies will be using them to allow you to make payments by swiping your cell phone next to a retail device.
  • Support for CPUPOWERUTILS: this is a new project derived from the older “cpufrequtils” for built in monitoring of hardware components. Although originally intended for the desktop, the support for built in monitoring of the server metrics is something that small IT shops can take advantage of by tunneling the monitor over X to a dashboard in a NOC.
  • Software RAID: Unfortunately, I know at least one too many IT shops are using Software RAID on their local installations. In the past, the slightest problem with the RAID set would hose the entire installation. In this kernel, you now have some ability to recover from bad blocks and rebuild the array while still online.

Practical Additions
Although there are other additions in the 3.1 kernel, many are focused on desktop computing and, let’s face it, CentOS has never been a desktop distribution (although I would argue that with version 7 they have made more than a passing effort at enhancing the desktop experience). Here are a few of the bigger changes in this version with a more enterprise focus:

  • Virtualization: Support for modern virtualization (as both a client OS and a managing hypervisor) has never been better. In addition to more natively supporting the virtualized hardware (as a guest OS in VMWare for instance, the new VMXNET3 network device is auto-detected and natively supported with no Guest OS tool installation needed). Xen got some love with memory fixes allowing larger memory pools and KVM got a lot of attention for enabling Hardware virtualization pass through to take advantage of more Intel on-chip virtualization.
  • Security: In addition to CentOS 7 shipping with a “Heart Bleed Bug” free OpenSSL implementation, the kernel has had some built in encryption upgrades. In particular, s390 encryption now supports hardware accelerated SHA-224 (greatly speeding up encrypt/decrypt on disk volumes) and a new “eCryptfs” filesystem for full volume encryption including UID checks (to prevent spoofing of mounts).
  • File Systems: Enhanced support (performance and bug fixes) for Btrfs, NFS, XFS (which is now the default filesystem when installing CentOS 7), reiserfs, FAT, exFAT, HFSplus and SquashFS. Linux has always been the king of supported filesystems (read, write, repair), but it truly continues to support the most variety in the enterprise with no close competition from any other server operating system.

Final Thoughts
This is a strong offering from CentOS in terms of a modern and relevant distribution. Right now, even the desktop is within shouting distance of most of the desktop distributions around (even compositing on the Gnome 3 desktop looks great). However, that relevancy will be relatively short lived given the nature of update frequency of all other desktop distributions. Keeping CentOS relevant on the desktop would require maintainers that spend equal amounts of time on keep those packages updated. Where this OS really shines is in the server space. By moving up to the 3.1 kernel version, all the modern functionality and devices one would expect from a Linux Distribution are in play. Hit us up below and share your experiences!

Terrence T. Cox

A veteran of twenty years in Information Technology in a variety of roles. He has worked in development, security and infrastructure well before they merged into what we now call DevOps. He provides training in Linux, VMWare, DevOps (Ansible, Jenkins, etc) as well as containers and AWS topics.

Leave a Reply

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