[Gllug] IBM Thinkpad Z61e for sale

Richard Jones rich at annexia.org
Fri Sep 19 11:21:57 UTC 2008


On Thu, Sep 18, 2008 at 10:52:34PM +0200, Peter Corlett wrote:
> On 20 Aug 2008, at 16:42, Richard Jones wrote:
> [...]
> > You should check whether the processor supports hardware virtual-
> > ization.  It's not necessary for Xen, but it is necessary for KVM and
> > we'd recommend you try KVM first.
> 
> Hypervisor-based systems such as Xen use less resources than full CPU  
> emulation such as KVM, Xen and Parallels. If you're specifically  
> interested in building lots of virtualised Linux boxes, I'd recommend  
> Xen.

That's not true.  What makes a difference is how much the guest
operating system cooperates with the host.  If the guest's networking
subsystem blindly believes it's talking to a genuine Intel e1000
network card, then both the host and the guest will waste a lot of
time.  KVM with virtio (paravirtualized disk and network drivers) is
as good as Xen and _much_ easier to use.

Hypervisors add another layer under the kernel which raises a number
of problems -- like:

 - You've got three layers of schedulers interacting in unexpected ways

 - Obvious stuff like powersaving and memory overcommit can't be
   done because the hypervisor can't see into the host.

 - The hypervisor has to have a whole new set of device drivers,
   boot code etc.  Once you've added all that stuff into the
   hypervisor, the main argument for HVs (which is that they
   are small and easy to audit) goes out the window.

Really hypervisors are the return of the microkernel.  If you want to
know why that's a bad idea, have a look at the implementation of
fork(2) in Minix some time.

> If you want even lower resource usage, look at linux-vserver. It's  
> orthogonal to Xen so you can even run it within a Xen domain - both  
> Dom0 and DomU - if you like. Linux-vserver runs on an even wider range  
> of architectures to Xen.

Container-based approaches are, not better nor worse, but different.
Containers, for example, are brilliant when you want to run 1000 Linux
guests (all with the same kernel version of course).  When you want to
run Windows, or 5 different operating systems for testing, or your
customers need to run multiple kernel versions or whatever, there is
no substitute for full system virtualization.

Of course, whatever virtualization you use, we would advise you to
abstract away the differences using http://libvirt.org, because the
choice of virtualization is a deployment/system administration
consideration.

Rich.

-- 
Richard Jones
Red Hat
-- 
Gllug mailing list  -  Gllug at gllug.org.uk
http://lists.gllug.org.uk/mailman/listinfo/gllug




More information about the GLLUG mailing list