OpenStack delivers a highly scalable cloud environment for a variety of applications. But, cloud workloads present new challenges for underlying operating system platforms. The nature of the cloud is to be agile, not static. Virtual machines are quickly created and destroyed in large numbers. Storage and networking need to be flexible and highly performant. Red Hat Enterprise Linux has evolved to match the pace and unique characteristics of cloud deployments and is optimized for OpenStack in several ways, including:
- Security – Cloud environments don’t deploy applications on dedicated hardware. Rather, they deploy multiple virtual machines on top of a pool of generic hardware resources, with virtual machines often sharing the same hardware. In this deployment model, virtual machine isolation is a key security concern. Enter Red Hat Enterprise Linux and the fine-grained permission enforcement afforded by Security-Enhanced Linux (SELinux) at the file, network and user levels. In Red Hat Enterprise Linux OpenStack Platform, SELinux enforces specific policies that are unique to the needs of OpenStack, such as enabling OpenStack to configure network namespaces which utilize Openstack's network services. The benefit of SELinux is to prevent different virtual guests from accessing network ports and connections maliciously. In this way, the security inherent in Red Hat Enterprise Linux enhances the security of OpenStack cloud environment.
- Storage – The ephemeral nature of cloud workloads requires rapid virtual machine creation and snapshotting, placing heavy demands on storage and volume management. Red Hat Enterprise Linux enables rapid virtual machine startup through new capabilities in the Block Storage layer of Kernel Virtual Machine (KVM), providing hierarchical solid state disk caching mechanisms. In addition, storage enhancements in Red Hat Enterprise Linux provide a framework into which storage hardware vendors can plug-in management interfaces, enabling capabilities such as snapshotting and rapid volume creation. In these ways, Red Hat Enterprise Linux is the foundation for software-defined storage for the cloud.
- Networking – Historically, networking tended to be static, consisting of physical wiring and a manual configuration of switches and hubs. For cloud workloads, the name of the game is agility and self-service. Requiring manual network configuration to provide private sub-networks for a collection of distributed and transitory virtual machines is a non-starter. Hence the emergence of software-defined networking (SDN). The Red Hat Enterprise Linux OpenStack Platform provides integrated SDN capabilities in the form of Open vSwitch, a multi-layer virtual switch designed to enable massive network automation through programmatic extension, while still supporting standard management interfaces and protocols (e.g. NetFlow, sFlow, SPAN, RSPAN, CLI, LACP, 802.1ag). Open vSwitch has been carefully integrated into Red Hat Enterprise Linux in such a way as to preserve compatibility for preexisting deployments.
- Virtualization – Red Hat is the leading developer of KVM technology, and today, KVM is a core Linux virtualization technology, consistently leading the industry in SPECvirt benchmarks.  KVM is also the most widely adopted foundation for OpenStack clouds. This is illustrated in a recent OpenStack user survey revealing that 71 percent of OpenStack deployments use KVM as their virtualization technology. The primary reason KVM is thriving is because it is a layered technology that utilizes, rather than duplicates, core Linux system functions such as scheduler, memory management, storage, networking, and hardware enablement. As such, KVM plays a critical role in enabling Red Hat Enterprise Linux OpenStack Platform and continues to be optimized for rapid virtual machine startup, high density virtual machine deployments, and accelerated input/output (I/O) for network and storage.
- Performance Tuning – As a general purpose operating system, Red Hat Enterprise Linux is deployed in a wide range of workloads. Virtualized workloads benefit from specific tuning to default kernel parameters. One aspect of the Red Hat Enterprise Linux and OpenStack integration effort is to automatically apply tailored tunings to virtualized hosts and guest deployments. This delivers “out of the box” performance without requiring the end user to be intimately familiar with a wide array of tuning options. Of course, custom, fine-grained performance settings may be created by experienced users.
From security and storage to networking, virtualization, and performance-tuning, Red Hat Enterprise Linux is a natural fit to combine with OpenStack and deliver what I think most users will find to be a superior product as a result. In my next post, I’ll discuss how the benefits of the Red Hat Enterprise Linux OpenStack Platform extend beyond technology optimization to integration and Red Hat’s extensive ecosystem.
1. Editor’s note: In his first post, Tim Burke reviewed the evolution of Red Hat Enterprise Linux, and detailed how integration with OpenStack via the Red Hat Enterprise Linux OpenStack Platform represents the latest innovation and evolution for Red Hat Enterprise Linux. This post is the second in a four-part series from Tim on this evolution. All statements in the blog represent the views of the author and Red Hat as of the original date of publication and have not be updated or revised subsequent to that date.
2. SPEC®, SPECvirt™, and SPECvirt_sc® are trademarks or registered trademarks of the Standard Performance Evaluation Corp. (SPEC). Competitive numbers shown reflect results published on as of July 24, 2013. For the latest SPECvirt_sc2010 results visit www.spec.org/osg/virt_sc2010.