Ahead of the VMworld extravaganza in San Francisco this coming week, the open source Xen hypervisor project is packaging up what it is calling a standardized implementation of Xen and related storage and switching extensions to the hypervisor that gives emerging cloud providers something they can't get yet: a consistent and free set of software on which to build clouds.
Simon Crosby, chief technology officer at the Virtualization and Management division of Citrix Systems, which bought XenSource, the commercial entity that created and support the Xen hypervisor project, two years ago for $500m, says that the Xen hypervisor gets some rightful criticism because you can get Xen from a lot of difference places which create slightly different code bases. Citrix can't stop others from doing what they will with Xen, but it can create a more standardized stack of software for specific kinds of deployments, and this is precisely what the company is doing with the launch of the Xen Cloud Platform project.
"This moves Xen from producing the engine to making the car," explains Crosby. "This is a complete open source vertical platform, which anybody can take to market."
Well, it is almost complete. The Xen Cloud Platform does not include tools for creating, provisioning, monitoring, or managing a cloud. Rather, it is a complete infrastructure virtualization stack that companies building clouds can standardize upon. They have to choose their own cloud deployment and management tools - perhaps something like the open source Eucalyptus or OpenNebula cloud managers - and weave them around the Xen cloud stack to orchestrate their clouds.
And unlike the ESX Server 4.0 hypervisor from VMware, which is gathering momentum as a cloud platform as service providers transform themselves into cloud suppliers, this Xen cloud stack is not only free, but hackable since it is open source. "Free is not enough for some cloud providers," says Crosby. "Some companies need to be able to hack the software stack."
Like, for instance, Amazon with its EC2 compute cloud, which is based on Amazon's own interpretation of the Xen hypervisor. Amazon has a partnership with Citrix and does some collaborative development with the Xen community. But because Amazon sells EC2 as a service, it doesn't have to share its own smarts about Xen and running a cloud with the open source community. (The GPL has a loophole that Amazon, Google, Yahoo, and others exploit that doesn't require them to share if they use open source software in a service rather than distributing software as bits and bytes). And Amazon has shown no inclination whatsoever to use the commercial XenServer hypervisor from Citrix underneath EC2. But one can envision - perhaps - Amazon picking up the Xen Cloud Platform, if it makes Amazon's AWS job easier and the product more profitable.
Smaller cloud providers who don't have the skills and the smarts to do their own Xen hacks or to create their own cloud management tools are going to be looking for some middle ground between home-tweaked Xen and XenServer. And that is why Crosby says that Citrix will eventually create a product and offer support for it based on the Xen Cloud Platform.
And this future product will be distinct from the Citrix Cloud Center (C3), formerly known as XenServer Cloud Edition, that Citrix pitched last year and tweaked when it started giving away XenServer for free this past February. The C3 product originally included XenServer 5.0 and NetScaler application acceleration, and earlier this year it was upgraded to XenServer 5.1 when NetScaler was put inside a virtual appliance Xen wrapper and Citrix tossed in XenApp and XenDesktop so service providers could offer all kinds of applications as services on virtualized cloud infrastructure. When XenServer 5.5 shipped on June 16, it was rolled into the C3 stack, which has a mix of per-user and per-VM licensing and support fees to match the way public clouds charge their customers.
The Xen Cloud Platform is not C3, but it will include some storage management, chargeback, and other features that Citrix created for C3 or the Essentials for XenServer tools that are necessary for cloud providers. The cloud stack includes the Xen hypervisor, with support for either Linux or Windows instances inside of its virtual machines. The stack also includes a domain 0 Linux installer for the Xen hypervisor that is pulled right from the kernel.org site where the Linux kernel lives. (Different Xen implementations use different installers and management tools. This will standardize it.) Citrix will open source storage features it has created to link into disk arrays to do volume management, snapshotting, cloning, and such, and chargeback and other features to cope with usage tracking will be added to the stack as well by Citrix.
As for a virtual switch, like the ones that VMware and Cisco Systems are touting with their respective VMware Distributed Switch and Nexus 1000V, the Xen community will pull in the Open vSwitch, which is an open source virtual switch that is distributed under an Apache 2 license. Open vSwitch is already supported as an alternative to the virtual network embedded in the XenServer 5.5 hypervisor. While this software switch virtualizes network connections within a hypervisor, Citrix has a distributed switch controller that orchestrates network connections between hypervisors that is not open source. (Well, that needs to be fixed, now doesn't it?)
The Xen community and its Citrix backer are also keen on preserving interoperability between clouds created using the Xen Cloud Platform and the Xen-based public clouds such as Amazon EC2 and Rackspace Cloud Servers, and others. To that end, the Xen Cloud Platform will adhere to the Distributed Management Task Force's Open Virtualization Format (OVF) for virtual machine images. And, says Crosby, Citrix and the Xen community are keen on pushing the Xen Cloud Platform "towards VMware compatibility."
VMware helped create the OVF standard, and XenServer 5.5 has a feature called XenConvert that allows an ESX Server VM stored in OVF format to be transformed into a native XenServer format and run as a Xen VM. Presumably, the kind of VMware compatibility that Crosby is hinting about is a bit more substantial than two-stepping between VM formats.
Members of the Xen advisory board, including Citrix (of course), Hewlett-Packard, Intel, Novell, and Oracle all support the Xen Cloud Platform effort, and Eucalyptus Systems (which is commercializing the cloud tool that bears its name), cloud providers Carpathia, GoGrid, HyperStratus, and SoftLayer, as well as Advanced Micro Devices, Juniper Networks, and Network Appliances were all trotted out saying they loved the idea. Funny how Amazon, the biggest cloud provider and the one using Xen, didn't say jack. ®