Citrix XenServer 6.0.201
Citrix has been working hard to improve its features and usability over previous incarnations of XenServer 5.6 in an attempt to overtake VMware. In some respects, it also eclipses Microsoft's Hyper-V.
It now tips the scales at 658MB (on the install CD). While it's a lot less than Server 2008 Hyper-V, it's still a good deal larger than VMware's vSphere, until you factor in that the CD also includes the hypervisor and XenCenter management utility. Once you start adding up the extra VMware bits and bobs, it is actually the leanest of the three.
It is also worth noting that XenServer takes a significantly different approach to its hypervisor, compared with Microsoft and VMware. The latter two predominantly use proprietary drivers and abstraction layers, whereas XenServer works with the hardware and existing drivers to simplify and speed up the hypervisor interaction with physical hardware.
For example, the XenServer control domain makes use of standard open-source device drivers, which should result in broader hardware support (although this is potentially a downside, due to a lack of vendor collaboration in driver hardening and/or patching). As another example, rather than using a proprietary file system, XenServer uses the native storage file system; VM snapshot requests are offloaded directly to the storage area network vendor's API.
Two separate physical boxes are required to run the XenCenter application and the XenServer host. The XenCenter machine requires a Microsoft Windows operating system — Windows 7, Windows XP, Windows Vista, Windows Server 2003, Windows Server 2008 or Windows Server 2008 R2 (all editions and versions).
Set-up is great. It's the easiest and most painless of the three hypervisors to install. The same CD is also used to load the XenCenter management console on a Windows-based PC.
To its credit, XenCenter is remarkably easy to use, and has a very clean interface; we consider it to be more user friendly than either Hyper-V or VMware. Creating, backing up and copying VMs is a doddle, as is adding other host servers to the cluster and generating performance statistics.
Host specifications are quite similar to Hyper-V — the limits guide notes that up to 130 logical CPUs are supported on a host machine, but this is dependent on the physical CPU type and 1TB of RAM. On the other hand, VM RAM is a little better than Hyper-V, but still lagging VMware at 128GB for Windows. A physical GPU can also be assigned to a VM, so the guest can leverage GPU instructions, which is very useful for delivering 3D graphical applications via virtual desktops.
There is a maximum of 16 nodes per cluster, and up to 800 VMs and dynamic memory allocation amongst VMs is supported.
Version 6 has improved guest OS support, including Ubuntu 10.04 (32/64-bit); updated support for Debian Squeeze 6.0 (64-bit), Oracle Enterprise Linux 6.0 (32/64-bit) and SLES 10 SP4 (32/64-bit); and experimental VM templates for CentOS 6.0 (32/64-bit), Ubuntu 10.10 (32/64-bit) and Solaris 10.
The improvements in virtual networking are in distributed virtual switching. A new fail-safe mode allows Cross-Server Private Networks, ACLs, quality of service (QoS), RSPAN and NetFlow settings to continue to be applied to a running VM in the event of vSwitch Controller failure.
A memory-over-commit feature is available, and is called Dynamic Memory Control (DMC), which is a "ballooning" operation, and is only available in the XenServer Advanced or higher editions. Ballooning is when the hypervisor is running low on memory, and it sets a target page into which the balloon driver will "inflate", creating artificial memory pressure within the VM, and causing the operating system to either pin memory pages or push them to the page file. However, it is not as mature as the memory-management of VMware, which uses three mechanisms for memory management: transparent page sharing (TPS), ballooning and compression.
Citrix has a powerful provisioning service that allows server workloads to be provisioned and re-provisioned in real time from a single shared disk image. This streamlines operations for administrators, as they can simply patch the master image. Dynamic workload streaming is particularly useful, because peak load periods and even migration between a testing and production environment can be catered for.
Fault tolerance is well supported, and a VM can be automatically restarted on another server, should a host fail. Or, if desired, a VM can be mirrored on another host for seamless failover. VM snapshots can be scheduled and archived, but high-availability features are only on XenServer Advanced Edition or higher.
For enterprise environments using XenDesktops with IntelliCache, or VMs protected via high-availability features, there is a limitation of 50 VMs or XenDesktop VMs per host.
XenServer is able to balance workloads, and it supports two optimisation modes. Performance Optimisation ensures that a minimum performance level is maintained, while Density Optimisation places the VMs on the minimum number of hosts.
The requirement for a separate licensing server, as with other Citrix products, is still true for XenServer. The "grace period" feature for disconnection of VMs and hosts from a licensing server (a non-receipt of a five-minute heartbeat message from the licence server) permits continued operation for up to 30 days without reconnection.
To ensure a seamless and simple migration across physical hosts, XenServer also supports virtual network switching.