Ravello Systems is a company allowing to use nested virtualization in the cloud. Instead of investing into a costly homelab, you might be interested into their advanced nested virtualization engine allowing you to run nested ESXi host and VMs on the top, through Amazon AWS or Google. Ravello was born in 2011 from folks working at VMware, and now part of the staff there are in fact also other folks which were working for KVM team before…
I must tell that I haven't been on the beta and just saw the demo with other bloggers and vExperts. How it works? You're able to create quite complex environments quickly through Ravello dashboard (works with drag-and-drop), to actually replicate your working environment with all the settings to a public cloud for temporary workflows.
There are no changes necessary to do. The Ravello capsule contains the VMware VMs, application level networking services, DHCP, DNS, load balancers, etc….
Only web browser is necessary to use the Ravello system.
In case for example you have production environment and you want to test an upgrade. You do not have free resources to test this upgrade in your datacanter. So the idea is to clone the environment to Ravello.
Which Use cases for the VMware Community?
- Developpement and test
- Sales demos
- Training
- POCs/evaluations
- Deployment testing
How it works?
The Ravello dashboard showing different capsules (VMs, settings, helper apps etc…)
Fist you need to create a new application, which opens your workspace. It opens some kind of canvas where you can:
- Create new VMs
- Upload existing VMs
- You can also drag-and-drop available VMs (from the left)
The canvas dashboards looks like this. If you click the Orange Import VM button, it opens a Ravello Import Tool.
When connecting to the Ravello console, you have the possibility to import your production VMs… There are quite a few possibilities on how to import a VM. The VM has to be powered Off, of in case of where you have OVF file the production VM can obviously continue to run.
The possibility is to:
- Upload a VM from OVF or Ravello Export File
- Create a new VM and then upload existing disks
- Upload single disk file
It's an assistant, where you just click next etc….
Once the VMs are imported you can drag-and-drop them into the canvas… If you select the VM you can change settings (add more(less) CPUs or RAM etc…. You can add VLANs etc.
You'll want to check the Network tab next where you can see the different default connections. All the informations here were extracted from the metadata of the VMs. but As you can see the different VMs are on different sub-nets going through the router.
The Publish Button will bring another window where you can choose between:
- Cost optimized – Ravello will pick up the Cloud for you and do a supplementary runtime optimization.
- Performance optimized – Will do the runtime optimization and lets you choose the Cloud (AWS or Google)
After hitting the publish button on that screen, the applications will be published to the public cloud.
Other features:
The whole deployment we just see can be saved with all the topology – As a blueprint. The blueprint is saved in Blueprint library.
The Costs?
There are no upfront costs. You only pay on what's you use. The costs covers the running instances in Google or AWS cloud and the Ravello technology. The cost is very low comparing the money you need to invest to a real lab and do and create nested ESXi hosts by yourself.
Sample cost..
The Technology:
The Technology (HVX) works this way. Hight performance virtualization engine with overlay storage and overlay networking. Once you actually ask to run the VMs at Google or AWS, Ravello creates and spins up nested ESXi hosts. It does binary translations with a lot of optimization. Then they expose the VMware or KVM virtual devices which allows your VMs to run on the top.
The overlay networking allows expose L2 environment to the applications which runs on the top where you can do things like broadcast or multicast. The overlay storage abstract the underlying storage from the cloud storage and expose it as block device.
New
They are capable to implement Intel VT and AMD-V technology in a software. This mode allows expose physical x86 interfaces with Intel-VT or AMD-V and it allows to run nested ESXi hosts on top of Ravello (and so Amazon, Google).
Example
In this example below you can see 8 nodes VMware cluster managed by vCenter server (Windows). Certainly a good option while you are traveling or don't have the lab resources at work or at home!
Wrap up:
Great nested environment which can be used for testing workflows, updates in case you don't have spare lab hardware for testing. With no upfront costs it looks like quick setup and spin environments. I'm looking forward to give it a spin -:).
Ravello Serie:
- How to create a simple VM in Ravello?
- How to Get Started with Ravello Systems – VM Import Tool
- Run Nested ESXi in AWS or Google with RavelloSystems – (This post)
- How-to Install VMware Tools on VM which runs in Ravello Cloud?
- How-to Assign a Public IP Which Persist Across Reboots for Ravello VMs
- How to configure RDP for your VM in Ravello Cloud
- How to create a multi VM application In Ravello
- How to Hot-Clone a VM and upload to Ravello Cloud
Check Ravello Systems Website
Enjoy.. -:) Stay tuned through RSS, and social media channels (Twitter, FB, YouTube)
Eugene says
Hi, great writeup!
I chanced upon this post as I was preparing myself to use Ravello Systems to replace my home lab to practice Vsphere. Am still learning how to properly use Ravello Systems for now but its gonna be sweet being able to run my labs in the cloud.
Cheers!