ProductsDesktop Server For Scientific Computing For IBM POWER For IBM System z For SAP Business Applications Red Hat Network Satellite ManagementExtended Update Support High Availability High Performance Network Load Balancer Resilient Storage Scalable File System Smart Management Extended Lifecycle SupportWeb Server Developer Studio Portfolio Edition JBoss Operations Network FuseSource Integration Products Web Framework Kit Application Platform Data Grid Portal Platform SOA Platform Business Rules Management System (BRMS) Data Services Platform Messaging JBoss Community or JBoss enterprise
SolutionsApplication development Business process management Enterprise application integration Interoperability Operational efficiency Security VirtualizationMigrate to Red Hat Enterprise Linux Systems management Upgrading to Red Hat Enterprise Linux JBoss Enterprise Middleware IBM AIX to Red Hat Enterprise Linux HP-UX to Red Hat Enterprise Linux Solaris to Red Hat Enterprise Linux UNIX to Red Hat Enterprise Linux Start a conversation with Red Hat Migration services
TrainingPopular and new courses JBoss Middleware Administration curriculum Core System Administration curriculum JBoss Middleware Development curriculum Advanced System Administration curriculum Linux Development curriculum Cloud Computing and Virtualization curriculum
ConsultingStandard Operating Environment (SOE) Strategic Migration Planning Service-oriented architecture (SOA) Enterprise Data Solutions Business Process Management
Issue #17 March 2006
- What is virtualization?
- An interview with Brian Stein
- Virtualization Resource Center goes live
- Introduction to DocBook XML, part 2
- Risk Report: A year of Red Hat Enterprise Linux 4
- Video: Red Hat Summit Nashville
- LibriVox gives books a voice in the public domain
- See you at the Summit: Eben Moglen
- Developers: Come play with us and build the future
- Book review: Active Liberty
- Video: Skanska
- Book review: Linux Patch Management
- Podcast: So you'd like to contribute to open source software
From the Inside
In each Issue
- Editor's blog
- Red Hat speaks
- Ask Shadowman
- Tips & tricks
- Fedora status report
- Podcast (XML)
- Magazine archive
An interview with Brian Stein
Brian Stein is the Engineering Manager of Emerging Technologies at Red Hat. Emerging Tech is the group that investigates and integrates cutting-edge research and development for possible release as part of Red Hat® Enterprise Linux®. It is this group that has paved the way to Xen and virtualization for Enterprise Linux users--two hot topics in the industry today. We wanted to know what they were up to, so we asked.
RHM: What is Xen, exactly? What are the pieces that make up Xen?
The initial goal of the Xen project was high-performance virtualization. The approach was to modify the guest operating system specifically for virtualization. As it turns out, this reduces a large amount of the overhead found with full virtualization on x86 (and x86_64) systems. This class of hypervisor virtualization is generally termed paravirtualization.
There are three major components which make up Xen:
- hypervisor - also known as virtual machine monitor; virtualizes system resources, provides scheduling of host/guests, intra guest communication and security
- xenoLinux kernel - a Linux kernel modified to run in a paravirtualized environment; includes both dom0 (host) and domU (virtual machines--more on this later)
- host components (device drivers, daemons, ...) - virtual device device drivers, xenbus, xenstore
RHM: I understand that an operating system needs to be ported to run on Xen. Which operating systems currently run on Xen? Which ones will Fedora™ Core 5 support? What about Red Hat Enterprise Linux 5?
Stein: The most common method of operation for Xen is support paravirtualization, where the guest OS needs to be modified tsupport being virtualized. Xen also supports unmodified guests (i.e., full virtualization) with the appropriate hardware support from AMD or Intel.
There are many operating system efforts to run as a guest on the Xen hypervisor, including Linux, BSD, and Open Solaris.
For Fedora Core 5 the focus was Linux and getting it out the door. In fact, the focus was more narrow in that we test our host/guest in tandem and testing full virtualized guests (e.g., unmodified Red Hat Enterprise Linux 3 as a guest). There is nothing stopping someone from running another modified guest of a compatible version on Fedora Core 5--mileage may vary.
The focus with Red Hat Enterprise Linux 5 will be to expand coverage and officially support a number of operating systems, both in paravirtualized and fully virtualized modes.
RHM: What is "Dom0" and what is "DomU"? What does each do, and how do they work together?
Stein: Dom0 is shorthand for domain 0, also known as the host. The host operating system provides hardware support (back-end drivers, ACPI), interfaces for guest control (eg, create, suspend).
Depending on the use, dom0 may be a full distro install or a lean host install. We expect the latter in large datacenter deployments, the former for desktop development and workstation use.
The hypervisor and dom0 provide the virtualization platform for guests.
DomU is short for unprivileged domain, otherwise the guest or virtual machine. This is equivalent to the typical machine installation on bare metal, with a different kernel and device drivers.
Each domU is instantiated in the dom0 once storage is identified and virtual machine parameters such as CPU and RAM are set. Starting in FC5 we've provided an anaconda installer to walk users through the process of creating and installing guests.
RHM: How does networking with Xen work? How can different virtual machines all share the same ethernet card?
Stein: Without getting into the mechanics of the device driver model in Xen, all interfaces in the guest are virtual by default. The guest does not interact directly with hardware, but through the driver/hypervisor interface.
The hypervisor and dom0 device drivers provide transparent sharing of resources. In some cases enforcing strict resource limitations (e.g., the amount of RAM provided to a domU).
For networking, dom0 basically acts as a networking switch routing traffic to each domU.
RHM: Can you save virtual machines and restart them later? Can you move them from machine to machine? Can you move a Xen instance from one platform to another?
Stein: Guests can be suspended in memory or disk and resumed at a later time. Xen guests can be migrated between machines while running ("live migration") or suspended to disk and restarted on available hardware.
Xen migration between platforms only works where the host supports the specific guest. For example, a 32-bit guest could migrate from a 32-bit host to a 64-bit host (x86 -> x86_64). Obviously a 64-bit guest would not be relocatable to a 32-bit host.