Features Fedora 16 

Fedora 16 dials up cloud and virtualization capabilities.

Test Lab

Fedora 16 comes with some desktop improvements, but for admins, the real story is about virtualization. By Thomas Drilling

The newest version of Fedora is jam-packed with the latest basic technologies. Because the Fedora project is the test bed for Red Hat's enterprise distributions, administrators can take a sneak preview at technologies intended for later use in RHEL and RHEV.

Fedora 16 continues to occupy its place as a pioneer of Linux technology, with key features such as Linux kernel 3.1 and Gnome 3.2.1. The Fedora-customized Gnome version 3.2.1 has what it takes to rocket up to the top of the must-have chart for non-KDE users – and to take users away from Ubuntu in the wake of the problems with Ubuntu's Unity desktop. The Gnome version that comes with Fedora 16 is definitely a more convincing package than Unity; however, from an administrator's point of view, the pillars of Gnome 3.2.1, including desktop features such as the integration of online accounts, are probably not the most important aspects. Instead, administrators and developers will be more interested in the development tools that Fedora 16 includes, such as Perl 5.14, the GCC Python plugins, the Haskell platform, and D2 – the latest version of the D programming language – or the SELinux access control system, which Fedora enables by default. But at the top of the administrator's list has to be kernel 3.1, with its new KVM and Xen functionality, and Fedora 16's above average collection of virtualization and cloud computing tools.

New Kernel 3.1

Much of the professional attention to Fedora 16 will fall on the new Linux kernel 3.1. The first thing to notice is that Fedora doesn't automatically benefit from the changes to the Btrfs filesystem, such as the modified locking mechanisms, which mainly provide more speed. The Red Hat developers toyed with the idea of making Btrfs the standard filesystem but decided to stay with ext4; the main reason for keeping with ext4 is the shortage of repair tools for Btrfs, as well as the conclusion that Btrfs is still too experimental for production settings.

The ipset tool for configuring IP sets within the kernel was first added in kernel 2.6.39 and has seen some improvements that now allow it to support firewall code for more flexible use of tables and filter information. At the same time, a fairly large patch has been applied to the new kernel to upgrade the iSCSI target framework LIO, which was introduced in kernel 2.6.38, to LIO 4.1. The kernel code for software RAID now supports bad block management for RAID levels 1, 4, 5, and 6 and can thus identify defective disk sectors on the disks used for the RAID array.

Dm-crypt, which kernel 3.1 uses for disk encryption, can now pass discard commands through to the underlying medium. Besides the regular improvements in hardware support, the kernel developers have mainly implemented important optimizations to extend the feature set or improve the speed of the kernel-based KVM and Xen virtualization solutions. After adding the last missing components for cooperation with the Xen hypervisor to kernel version 3.0, the developers turned their attention to the Xen PCI back end in kernel 3.1, which now supports PCI/PCIe device pass-through to Xen guests.

More interesting for Fedora is the fact that the kernel code for KVM now possesses basic functionality to allow systems with Intel processors to launch guest systems with a different guest system (nested virtualization). The KVM kernel code for AMD processors added nested virtualization back in 2009. Additionally, kernel 3.1 now has experimental support for zero-copy RX for MacVTap and VHostNet, although this is still disabled by default. Zero-copy RX improves network performance in virtualization by reducing the management overhead that occurs on receiving or passing through network data.

Fedora Cloud

Red Hat has quite obviously been pursuing a strategy of strengthening its position on the virtualization market through targeted acquisitions in recent years. Red Hat's own enterprise products on the virtualization market still rely on free technologies like KVM, but since Red Hat owns KVM, it can exert a major influence in the ongoing development of what is currently the virtualization technology with the strongest growth.

Red Hat's own enterprise virtualization solution, RHEV, confidently positions itself as the third force besides VMware and Citric XenServer in the battle to become the largest infrastructure provider. Users of Fedora 16 benefit from technologies developed for RHEV that go well beyond what other distributions can offer.

When it comes to cloud computing, Fedora 16 includes the HekaFS 0.7 distributed filesystem, a version of GlusterFS designed for the cloud. While HekaFS provides a cloud-capable distributed filesystem, cloud instances can be created and managed using the Aeolus Conductor (Figure 1) web front end. Additionally, Fedora 16 includes the cloud high-availability solution Pacemaker and the OpenStack tools that allow administrators to configure and operate cloud and storage solutions, as well as the Condor Cloud IaaS implementation.

Fedora includes the Aeolus web-based cloud management tool.
Figure 1: Fedora includes the Aeolus web-based cloud management tool.

Virtualization Solutions

Although Red Hat mainly focuses on KVM as its centralized virtualization solution, the version of kernel 3.1 included in Fedora 16 also offers a decisive improvement to the free alternative Xen in the form of Dom0 support. In addition to this, the Red Hat developers have completed a number of improvements to the Virt Manager graphical interface (Figure 2). Administrators can use Virt Manager to glean far more information about the status of active guest systems, and they can use it for read access to guest filesystems.

As a Yum/RPM-based system, Fedora will install missing packages on the fly when you launch the Virtual Machine Manager.
Figure 2: As a Yum/RPM-based system, Fedora will install missing packages on the fly when you launch the Virtual Machine Manager.

You can even inspect the registry on Windows guests. And Fedora 16 uses the Virtual Machine Lock Manager to prevent two virtual machines from accessing the same disk image at the same time; this could be fatal, and it could happen if an administrator were to launch the same virtual machine twice. Fedora 16 comes with a new version of the Spice protocol, which Red Hat developed as a centralized component for its RHEV server virtualization, and Fedora is now also capable of sharing USB devices between the guests and the host (USB pass-through). You can also redirect USB to other hosts on the network and synchronize the volume between the virtual machine and the host system.

Having said this, Spice still doesn't offer 3D support, so GL effects on the guest system remain unavailable. You can download various editions ("spins") of Fedora 16 from the project website [1]. The Gnome release notes [2] and Fedora release notes [3] offer more details about the features in Gnome 3 and Fedora 16.


As the Fedora 16 code name "Verne" suggests, the Fedora project continues to build a bridge to the future. Part of the project's vision is to develop a reputation as the distribution with the latest technology. Earlier versions have shown that this philosophy doesn't automatically make Fedora the distribution with the most satisfied users. That said, the Red Hat developers don't aim to make Fedora the best desktop distribution on the market; their ultimate goals is to test their own developments, which then flow into other products.

Although the Fedora 16 desktop has many advantages over Unity, Fedora 16 fails to overtake Ubuntu as the best desktop distribution – mainly because the Fedora user interface makes it more complicated to install proprietary components such as codecs or players retrospectively. As a server distribution, Fedora 16 offers some technologies that you will not find in this form in any other distribution. Incidentally, Fedora 16 is dedicated to Unix pioneer and co-author of the C programming language, Dennis Ritchie, who passed way in October 2011.