Red Hat Focuses RHEL 7 On Virtualization, File Systems
It isn't called Enterprise Linux for nothing. Eleven years ago, when Red Hat decided to get serious about the corporate market, it killed off its hobbyist Linux and created a slower-moving, more predictable Linux distribution. This was not initially a popular decision, but it has panned out for Red Hat, the first and only open source company to break through the $1 billion revenue barrier.
Back on December 11, Red Hat put its forthcoming release, Enterprise Linux 7, into a high-touch beta program with selected customers, the next step in a process that starts with a Fedora development release and ends up with a final RHEL 7 release sometime this year. The Red Hat Summit is going on next week in San Francisco, and the company is being mum about any potential RHEL announcements. But given that Red Hat has not put out a formal Release Candidate, it seems fairly certain that RHEL 7 will not be formally launched and available next week.
Red Hat likes a spring or fall launch for its Enterprise Linux, and if it doesn’t hit one it hits the other. The cadence of the OpenStack cloud controller is now April and October, as is the cadence for rival Canonical's Ubuntu Server, and it seems likely that Red Hat will keep to that pace going forward just to be able to synchronize with the OpenStack community. It is our guess that we will see a few Release Candidates and then a final release in the late summer or early fall. It all depends on the feedback from enterprise customers as they play around with the code.
The important thing to remember is that an operating system is not a revenue event for Red Hat, or for rivals SUSE Linux or Canonical for that matter. Customers buy support subscriptions, and they can be applied to any of several different releases, not just the latest-greatest rev of the software. So there is no pressure to get it out at any particular time.
Moreover, a lot of new features that are created upstream for the Linux kernel and other aspects of the Linux stack (which has thousands of programs rolled up into the distribution, including databases, middleware, compilers, and applications) are backported to the prior Linux release – in this case, RHEL 6 – so there is often no pressure to move to a newer release to, for instance, get support for new processors or peripherals. This is not the approach the server business had before RHEL was created, but it is the way most operating systems are updated these days. And the reason is because this is less disruptive and at the same time does not stifle innovation.
The RHEL 7 release will look very much like the RHEL 6 release it replaces, even though it will have an updated Linux kernel and plenty of new features. RHEL 7 will support the 64-but variants of X86, Power, and System z, just like its predecessors. The Linux base has largely moved to systems with 64-bit processing and memory addressing, and so only 64-bit kernels and ISOs will be provided with RHEL 7, explains Ron Pacheco, senior manager of platform product management at Red Hat. RHEL 7 will have 32-bit libraries and runtimes, so 32-bit applications will still run on RHEL 7, and you can of course load a 32-bit instance of an earlier RHEL release inside of the KVM or Xen hypervisor embedded in RHEL 7, too. But you won’t be able to load RHEL 7 on a 32-bit machine.
RHEL is also not going to be available for ARM processors, and part of the reason is that Red Hat is waiting for 64-bit ARM server chips to come to market.
"The short answer is that we are still working on the final details of our plans for ARM," Mark Coggin senior director of product marketing for RHEL, tells EnterpriseTech. "But suffice it to say we work with our Fedora community to explore and make available the support for the ARM architecture. We are staying close with it, we are investing in the upstream activities with it, but we are still formulating our specific plans for how, if, and when we support RHEL on the ARM architecture."
The theoretical limits of scalability for RHEL are much larger than the tested limits, and at the moment both limits are sufficient to span most of the capacities of machines in use today. Red Hat is boosting the maximum number of logical X86 CPUs to 5,120 with RHEL 7, up from 4,096, but thus far, no one has built such a machine. The operating system can support up to 160 physical cores in a single system image on X86 iron, which is sufficient to cover a machine using the new fifteen-core Xeon E7 processors from Intel in an eight-socket configuration. Red Hat has not said how far it will scale on IBM's Power or System z processors, as you can see from the chart below:
In theory, RHEL can address up to 64 TB of main memory as it was designed in both RHEL 6 and RHEL 7, but thus far, it has only been tested and certified up to 3 TB. The virtual machine guests running atop the KVM hypervisor are able to support up to 256 virtual CPUs (that is threads or cores, depending on whether or not the chip supports simultaneous multithreading in its many variations on chips) and up to 3 TB of virtual memory. This is also the same as RHEL 6.
"We will continue to push the boundaries, but it is always a matter of testing," says Pacheco. "We are always desperate for people to loan us massive amounts of hardware so we can do this type of testing, and so when we publish our limits, we are very conservative. We talk about what we have already tested, not the theoretical limits."
So for example, in RHEL 7, Red Hat is making XFS the default file system. This file system, originally developed by SGI, can scale up to an incredible 16 EB (that's exabytes) of total capacity in theory and can have a file size that is up to 8 EB and directories with tens of millions of entries. This is what EnterpriseTech is talking about when it refers to supercomputing technology making its way into the enterprise. But Red Hat doesn't have to push it that far because a typical Linux shop does not. Red Hat is picking XFS because customers want a fast file system that can scale dynamically, not because they need to address exabytes of storage across tens of millions of files. (Well, at least for now.)
"So our plans with XFS – with fingers crossed and lots of testing – is that it will support up to 500 TB in a logical volume with RHEL 7, and we are talking to customers and ecosystem partners about pushing that boundary," says Pacheco. "While XFS can scale into the exabyte range, we don't want to talk about the theoreticals, but rather what has been practically tested."
RHEL 7 will support three file systems for root, boot, and data: XFS, btrfs, and ext4. The latter is an upgraded variant of the standby that has been at the heart of Linux for a long time, and btrfs is relatively new and interesting in a lot of ways. SUSE Linux has already made btrfs a peer to ext4 in its Linux SLES 11 SP3 distro, and Red Hat has been a little more conservative.
"Our thoughts around btrfs are that it is a very promising file system, and it has got a lot of really cool features in it like the integrated logical volume manager, the ability to take snapshots and clones, and also to be able to dynamically scale up a file system like XFS but also to be able to scale it down," Pacheco explains. "This would be a great attribute for an ISP or a cloud provider that wants to slim things down as the business needs. Even though it has been out there for a couple of years, btrfs is the new kid on the block and we are interested in getting a lot more feedback on it."
On the virtualization front, RHEL 7 will sport LXC containers, which have been in tech preview on earlier Enterprise Linux releases. LXC is a lightweight virtualization technology that is akin to the zones that Sun Microsystems created for its Solaris 10 operating system a decade ago and several other virtual private server products that actually predate full-on hypervisors and their virtual machine guests. With the container approach, the virtualization abstraction layer runs atop a single kernel and file system instance, and sandboxes of runtimes and security software that looks and smells and tastes and sounds and feels like a real operating system runs atop the shared kernel and file system. Applications think they have the whole machine, but they are sharing. IBM mainframes and minicomputers have had subsystems for decades, and they act like containers. The idea is not new. That doesn't mean it is not useful.
In the case of LXC containers, those containers can have kernels and runtimes, or just a portion of the kernel and runtimes. Containers will allow for several hundred instances to be run on a single server instance, all of them RHEL 7 instances in this case, compared to one or two dozen VMs with full operating systems on them atop the KVM hypervisor. Red Hat is working with the Docker community, which has created a very clever container application packaging system, to make the apps running inside of containers more portable. At some point, it will not be surprising to see live migration of LXC containers. Parallels has already figured out how to do it with its OpenVZ containers for Linux and contributes this code upstream.
"We are actually hardening that whole LXC environment," says Pacheco. "So we are taking the control groups for resource management so you can assign resources you need within individual containers. We are introducing up to five different namespaces that will provide process isolation and they will all think that they are special and that they are the only ones that exist. And then we are using SE Linux to secure the containers from each other as well as from the underlying host. This way, if a container gets compromised, it doesn't end up poisoning the entire environment. This is similar to what we have done in virtualization with sVirt, where we used SE Linux to lockdown virtual machines."
The high-touch beta program has over 60 customers participating, and they are engaged directly with Red Hat's software engineers at the same level as the company's hardware and software ecosystem partners. This includes national supercomputing labs, big cloud providers, financial services and pharmaceutical firms, large manufacturers, energy companies, and educational and governmental organizations. Updates are put out on a weekly basis for the code.
"They are all are large organizations that are widely respected in their sectors, and they have all made deep investments in RHEL," says Coggin.
Linux got its big break in the supercomputing labs in the late 1990s, thanks in part to Beowulf clustering, and took a few years to find its way into the corporate datacenter. At first, RHEL ran under-the-radar workloads like running Apache and light web applications that were not mission critical or particularly scalable, frankly because the Linux kernel did not scale well and was not nearly as reliable as Unix or proprietary operating systems. But as it has matured, Linux has long-since become a credible Unix replacement, first in the financial services sector followed by the government and telecom sectors. Interestingly, with over 1 million Unix servers still out there, Red Hat is still benefitting from Unix migrations, says Coggin.
Today, 90 percent of the Fortune 500 is running RHEL on mission critical workloads, and so are many smaller organizations.
"In the past five or six years, as customers got used to RHEL, they realized they could use this for workloads beyond their high performance risk management applications or their scale-out web server farm," explains Coggin. "And so they began to build standard operating environments for web serving, or two-tiered database applications, and RHEL would be three or four of their six standard operating environments that they would deploy."
This isn’t just about simplifying infrastructure, but leveraging the skills companies have in managing that infrastructure.
One interesting final note: Red Hat is not naming names, but some big hyperscale datacenter operators are using RHEL.
"Even Web 2.0 companies that you would think are going to gravitate to a free Linux distribution, many of them are actually Red Hat customers," says Coggin. "They see the value in having the lockdown and stable lifecycles that we deliver for RHEL. And they are not only our existing customers, but they are in the high-touch beta program with us in addition to the big banks and telcos and other large global enterprises that deploy RHEL."