You've heard of a hypervisor, and you've probably heard of a storage hypervisor. But here's a new one to add to the virtualization lexicon: a "cloud application hypervisor."
What does it do? It allows you to take an application made up of several virtual machines (VMs) running on VMware or KVM, and encapsulate it along with all the networking infrastructure that goes with it. You can then take that encapsulated application and run it in a public cloud, without any modification at all. And that's regardless of the virtualization system that the public cloud provider is using.
It certainly sounds attractive for anyone interested in hybrid cloud computing.
The cloud application hypervisor is the product of a new company called Ravello Systems, but there are some well-known industry faces behind the start-up. Among them is Navin Thadani, who until recently was the top KVM server virtualization technology guru at Red Hat.
The cloud application hypervisor concept is similar to the way in which a regular hypervisor allows a physical server to host multiple guest virtual machines. "We take a virtual machine running in a public cloud, and run our HVX cloud application hypervisor on it. HVX allows you to run multiple VMware or KVM virtual machines on top of it without any changes," Thadani says.
That means that you could take an app running on VMware VMs in your data center, encapsulate it, and move it up to Amazon or Rackspace for example, or between the two. "The Amazon (or Rackspace) virtual machine thinks it is running a regular guest," Thadani adds.
The clever bit is that there is also a software-defined networking (SDN) element to this as well. "You run HVX on cloud virtual machines, and all the HVXs talk to each other and form a networking overlay. That means you can define any networking topology you like," explains Thadani.
The thinking behind it is this. The cloud is meant to provide additional burst capacity to enterprises, but in practice it's hard to use it like that. The reason is that you might be running a VMware-virtualized infrastructure, but convenient cloud providers might be running Xen or KVM.
They might be VMware cloud providers, but even then the networking infrastructure will also likely be different. "What usually happens is that enterprises have to rebuild and recode their applications to run them in the cloud; it's not just a simple spill over," says Thadani.
Ravello offers HVX using a software as a service (SaaS) model. You log on to the site, get an upload utility that can see the VMs in your data center, and upload a group of them to Ravello. A default network connecting them is provided, but you can also draw links between them to define an application flow — perhaps between a web server, two application servers and an application server, for example.
Then you choose the public cloud on which you want to "publish" the app, and you're done, according to Thadani.
So would this appeal to? The first use case is for development and testing, Thadani reckons. "I always remember when I worked in that field that there was never enough resources for development and testing, and the test environment never looked like the production environment," he says.
Using encapsulation, applications can be cloned to whichever cloud is cheapest or most convenient, and development and testing can be carried out there. And since Ravello makes it trivial to clone an app in the cloud, developers can work with as many copies of it as they want.
There's also a case to be made that a cloud application hypervisor can help cut cloud costs. How? In the same way that plain old server virtualization can help reduce server costs: through higher utilization. The argument is that you can rent a single VM in the cloud, put on the HVX hypervisor and then run multiple VMs on it. Clever.
What cloud providers will make of that remains to be seen: Thadani argues that it effectively lowers the cost of using the cloud, and that will drive up demand. Or that it lowers the cost of using the cloud, while leaving providers' margins unchanged. Whichever way you want to look at, he's hoping that cloud providers don't get the hump and try to get a cut of the benefits that HVX can bring.
At the moment HVX runs VMs based on VMware and KVM, but Thadani says that Hyper-V and even Xen may be added if there's sufficient demand for them — from a technical standpoint it's perfectly feasible. And although applications can only be "published" on Amazon, Rackspace and HP clouds at the moment, more clouds are in the pipeline, he promises.
So that just leaves the cost. For the moment Ravello's service is in beta and is available for free, but when it's launched properly (some time in the next few months), it will probably be priced on some usage-based model, according to Thadani. But thanks to the higher cloud VM utilization rates that it provides, he believes that sometimes it will cost less to pay for the Ravello service and use less cloud resources than it would to cut out Ravello and go straight to the cloud service provider.
That sounds almost too good to be true. But with virtualization technology, you never quite know…
Paul Rubens is a technology journalist and contributor to ServerWatch, EnterpriseNetworkingPlanet and EnterpriseMobileToday. He has also covered technology for international newspapers and magazines including The Economist and The Financial Times since 1991.