In our recent article “How Traditional Data Centers Should Use The Cloud” we discussed the concept of starting the application development process in the cloud and then migrating that application on-premises when development is complete. This approach saves the startup expenses of development and allows for more accurate forecasting of what the actual production application will require in terms of CPU, networking and storage. A big challenge, however, is how to move that workload to and from the cloud. Ravello allows you to run your VMware workloads, unmodified, in Amazon Web Services (AWS) or Google Compute Engine (GCE), completing the promise of cloud supported application lifecycle management.
Ravello, where the founding team has deep roots in KVM, is focused on the next generation of virtualization, something they call “nested virtualization”. Ravello is a cloud service powered by nested virtualization, they essentially deliver their solution via a software as a service (SaaS) model. The service allows an organization to run their existing VMware or KVM virtual machines, unchanged in the AWS and GCE clouds.
Ravello essentially takes the abstraction that virtualization is known for to the next level. Virtualization abstracts the operating system and application from hardware, but allows the operating system to think it is still running on its own unique set of hardware. Ravello does the same thing, but abstracts the virtual machine from the virtual environment so that it can run in the AWS or GCE cloud while thinking it is running in the data center. To pull this off, they have built a nested hypervisor and an overlay network that enables the application to keep its virtual machine images unmodified and its networking intact – including static IPs, multiple subnets, VLANs, multicast and broadcast. It also provides access to a clean L2 network in the public cloud. These are capabilities you would not normally be able to do in AWS or GCE clouds.
The use cases for this type of solution are numerous. Other than the application lifecycle use case described in our article, there is the potential for Ravello to enable things like continuous testing, training labs and sales demos, all without modifying how the application runs in the VMware or KVM environment.
Again, Ravello is deployed as a service and is accessed via a web browser.
The first step is to import your VM images, which can be done by uploading them to the service, even directly from your vCenter Console. They are essentially your VMDK files that get uploaded without any VM conversions.
Ravello uses a canvas paradigm onto which you drag and drop these VMs to “draw” the virtual environment directly, one that looks and feels like Visio. Meanwhile, Ravello automatically re-creates the network configuration based on the meta-data in the VMs that are uploaded. Then the network can be fine tuned with VLANs and tagging regardless of whether or not AWS or GCE support it. It is a very effective and approachable way to recreate a cloud data center in the cloud.
Once the VMs are in the private library and the application has been created on the canvas, the Ravello service can deploy as many instances of it as needed. You can also snapshot your application environment to save your application blueprints and rapidly deploy multiple iterations of an application.
Once the application workload is running in the cloud there are a variety of options to fine tune the environment to meet an organization’s particular demands. Moving the application back out of the cloud and back into the on-premise data center, critical for cloud supported lifecycle management design described above, is just as easy as moving it to the cloud. Remember the VMs are not modified in any way by the Ravello service.
Organizations of all sizes are looking for the “right” way to use the cloud. Many companies that have their own data centers are looking to the cloud to be an extension of what they do internally, also known as the “hybrid cloud”. But for the hybrid model to work and be adopted, it has to be easy to move workloads back and forth between the internal data center and the public cloud. Ravello is a prime example of a product that makes that process more feasible for the average IT professional.