Ravello was founded in early 2011 with the sole purpose of changing the way companies, large and small consume the public cloud. Ravello’s Smart Labs have self-contained capsules to run your VMware/KVM development, test, training and demo environments in the cloud without migration.
They are using AWS and Google as an underlying IaaS platform to offer IaaS services (and more) over that with really interesting costs and flexibility. But much important they are giving a powerful platform to manage your “applications” (that are similar as a vApp concept).
This user interface is web oriented and similar with other (IaaS) public cloud management interface, but more user oriented: you can design your application in the canvas area, design your networking, define your services and the NAT/firewall rules, all with a simple but powerful graphical UI.
And you can build your “template” using the library and the blueprints, use something existing or share with other people. This, from my point of view, is the most powerful feature in order to re-use the experience and the knowledge of other people (or also yours, or from other in your team). For labs this could be disruptive, because other can build some lab (or the skeleton of a lab), you can improve it and then share again… or just use it and learn.
You can choose with datacenter and cloud provider use, or simple choose to optimize your application for costs or performance aspects.
But there is more and more… One other unique feature is that you can simple import not only your ISO, but also your VM or some pre-build OVA/OVF and run without any changes on Ravello platform (that runs, as written before on AWS or Google!)… you can run a vSphere VM on Ravello due to the powerful hypervisor that they build.
Ravello has part of the team that introduced the KVM hypervisor (somebody remember Qumranet before the RedHat acquisition?), and they have build HVX, the first platform to virtualize the public cloud and enables an enterprise to completely encapsulate a multi-VM application and run it on any cloud (e.g., Amazon AWS and Google Compute Engine) without any changes whatsoever.
HVX consists of three technology components and a management layer, wrapped up and offered as a SaaS:
- a high-performance nested virtualization engine (or nested hypervisor),
- a software-defined network, and
- a storage overlay.
The management layer manages the technology components, provides the user interface and API, handles image management and enables monitoring – all as a SaaS service.
One big news that they have announce, after a private beta period is the possibly to run nested environment also the Intel VT instructions set… That mean the possibility to run nested hypervisors!
So not only the possibility to run native VMware vSphere or KVM inside Google or AWS platform, but now the possibility to run VMware ESXi (and potentially other hypervisors) on those public cloud provider! For more information see the offical announce page: VMware ESXi on AWS or Google Cloud – Public Beta.
Import an existing VM is almost easy (there is a specific application for do this) and I will describe this operation in a dedicated post. Of course running a nested environment imply some performance overhead that make this solution suitable more for lab and testing, rather than for production environment. Honestly the performance degradation is not much and can make this product interesting also for other users.
But labs is the main user cases and the big flexibility of the product make really easy to build small or big labs, works with multiple blueprints (that can be used as “versions” or “snapshots” of your applications), and share with other people.
The network virtualization provided by Ravello include several features and tools to build your virtual network, but can still be improved in the future (to add integration with external networks and maybe native VXLAN traffic).
On the other side, the existing storage virtualization is almost comple and it really interesting that can use the best of the underlying features and add caching and deduplication over it.
Of course, also in this case, more could be done also on the storage… having a native file level access could be nice, instead the only block level access, in order to share information across VMs in the same application or across more applications. One solution could be build your own file server application in order to provide your NAS.
In my opinion could be more useful, for labs perspective, could be the possibility to share one or more images across two or more VMs… in this way you can build easy and faster a VMware ESXi cluster with some shared datastore!
It’s really useful also define how many time your application must run… after that time it automatically stop all the related VMs, but you don’t loose your data, so if you need them again you have only to start again.
Another interesting aspect, compare to some other cloud solutions based on existing cloud provider, is that you have to pay only to Ravello, only for the services that you are using… it doesn’t really how and where (anyway you can choose which datacenter and which cloud provider).
Somebody can ask why only Amazon or Google and not also Azure and vCloud Air… I’ve got an official answer at this question related to a limited scalability of the provider API that are not so flexible and reliable (yet)… but I suppose that also the costs can be another reason of this choice. Anyway they don’t exclude to add other public clouds in the future and, from my point of view, this could be a smart move and make Ravello also an implicit cloud broker where you can have the cheapest or faster choice simple by choosing to optimize your application for the cost or the performance.
I suggest to give it a try… it’s something really interesting and could be powerful for build your lab. I hope also that the community can grow around this to improve the public images and public blueprints and maybe also work on the architecture aspects of an application (the visual designer is really useful) to share more experience.
Consider that you can already run ESXi 5.x or also the new ESXi 6.0 inside a Ravello’s VM, so you can build your own Hand On Lab to test features also complex, like for example the new cross-vCenter vMotion!