Issue #14 December 2005

The virtues of Xen


Virtualization allows you to run multiple full operating systems concurrently on the same machine.
Daniel Veillard

Red Hat has announced it will push for Xen integration in the Linux kernel, and that virtualization and stateless Linux is the way to go. Hooray! But wait--what's the buzz all about? What's so special about virtualization anyway?

Rik van Riel and Daniel Veillard are developers deeply involved in Xen, and they were willing to talk to Red Hat Magazine about the wonders of virtualization:

RHM: For our less technical readers, please explain what virtualization does.
Rik: In this context, virtualization is the ability to run multiple instances of the operating system on one computer. That is, making one computer look like it contained several computers.

Daniel: Just to add to Rik's explanation, I like using the following analogy to explain this concept to a general audience: Virtualization is the next step in the flexibility-of-use of computers. Just like multitasking allows you to run multiple programs simultaneously--stopping and starting them at will--virtualization allows you to run multiple full operating systems concurrently on the same machine. In the future, instances of running systems will be stored, copied, and moved between machines, increasing flexibility-of-use.

Rik van Riel helps get Xen ready for the enterprise.

RHM: Why would anyone want to run more than one instance of an OS on their machine?
Rik: This is done for a number of reasons:

First, consolidation: Many servers are idle 80% of the time, so if a server could be fairly shared between multiple workloads, a company could run the same tasks with fewer computers.

Second, security: Tasks can be isolated from each other to a greater degree when they run in separate virtual machines. It is also possible to run a security monitoring program in one virtual machine, and the applications in another--this way there is a large barrier between the applications and the security monitoring program, and it is extremely difficult for anything to subvert the security program.

Then, system management: Virtual machines are much easier to recover if something goes wrong with the virtual machine that runs your applications, since the other system software on the computer is still running. Note that other system resources (disks, networks, etc) can also be virtualized to improve system manageability. Examples would be LVM, VLAN, and so on.

Daniel Veillard speaks about Xen at LinuxTag.

RHM: What are you working on at the moment in the virtualization area?
Daniel: I would say our goal is to make sure Xen is tested as much as possible in the Fedora context and make sure it will be ready for the next Red Hat® Enterprise Linux® release.

Rik: Emerging Technologies is the part of engineering that is not directly involved in maintenance of released products, and is used as a way to give engineers time to bring new technology to market. This separation is useful because our customers have a practically infinite number of feature requests for the released products and we could spend as much time on it as we wanted without ever catching up. We are working on improving the Xen port of Linux, as well as better Xen utilities.

Daniel: There is also integration with the existing Fedora (and eventually with Red Hat Enterprise Linux) framework, like anaconda and Red Hat Network. These are the tasks on which people from the ET team are working. Fedora(tm) Core 4 shipped with an early version of Xen, and currently we are doing our best to get a good working version for Fedora Core 5. As soon as it is released, we will publicize the availability of the virtualization widely in order to get as many people as possible to use Xen and give us feedback.

RHM: How is your project going to change the virtualization software in the future?
Daniel: We want to make Xen virtualization an organic part of the Fedora and Red Hat Enterprise Linux experience, by fully integrating it and making it smooth and reliable for Linux users.

RHM: What other virtualization solutions are there?
Daniel: VMWare is obviously the main closed-source competitor to the Xen technology in the Linux environment. Microsoft is also adding virtualization to their operating systems. And Novell shipped an older version of Xen in SLES. In the open source world, there are other virtualization solutions like QEmu, but they work in a very different fashion and don't achieve the same level of performance as Xen.

Xen is a popular topic with technical audiences.

RHM: Did you have a chance to speak about your project at open source events in the past?
Rik: I gave a talk about Xen at the Red Hat Summit in New Orleans.

Daniel: I spoke at LinuxTag in Karlsruhe, Germany this June, and the response was impressive! :-) Virtualization is very exciting to the technical audience. We could not fit everybody in the room which normally would hold about 200 people.

RHM: Anything else you wish to add?
Daniel: Efficient virtualization on the cheapest hardware and on the most versatile operating system is a disruptive technology, and we are only starting to explore that field and guess some of the effects it will have. I expect virtualization will change the way we manage servers as well as the way we use our desktop computers.

Resources