Google Cloud Platform Blog
Product updates, customer stories, and tips and tricks on Google Cloud Platform
Accelerate development of complex applications and Android mobile clients with Ravello on Google Compute Engine
Friday, April 25, 2014
Today's guest blog post comes from Hadas Birin, Director of Product Management at
Ravello
.
Self-service tools are critical for developers to be agile and move forward quickly, prototype new ideas and test implementations.
Google Compute Engine
provides just that for single VMs – you can quickly spin up a VM on demand and use it.
Ravello
, paired with
Compute Engine,
lets you do the same for complex multi-VM environments without any networking or OS constraints.
Developers and test engineers can spin up multiple copies of production-like complex environments on demand in Compute Engine for development and test. An environment may include many VMs (Windows, Linux, Solaris, BSD…) and a complex network topology (static IPs, multiple subnets, firewalls, load balancers…).
Each instance of the same environment has a fully fenced network that uses the same IP addresses inside, and only differs by the DNS names that allow external access into the VMs. The network, storage and multi-VM encapsulation within each environment allows for one-click duplication of environments.
Here are a few common use cases where developers use Ravello:
Accelerating backend dev and test:
Every code commit can be tested instantly on a replica of the production environment as part of the Continuous Integration process (read
more
).
Multiple identical copies of the production environment can be spun up on Compute Engine to allow for parallel automatic/manual testing, resulting in a faster testing cycle. Environments can be shut down automatically when testing ends or left running for the developer to investigate in case a test has failed.
Developers can easily deploy into their own environment on Compute Engine from IDE/shell using
Maven
or
REST API
(with
Ruby
/
Python
bindings).
Accelerating mobile / web client dev and test:
Developers can run Android on Compute Engine to test their native and web mobile applications, do continuous integration and run scale tests of thousands of Android clients (read
more
).
Developers can test different browser versions including Chrome, Firefox, Safari - all in parallel using Selenium GRID with Selenium WebDriver - and save tremendously relative to specialized browser testing services (read
more
).
Accelerating dev and test for existing complex applications from private data centers without any modifications:
Existing VMs (say from VMware) can be uploaded onto Ravello and run on Compute Engine. Ravello provides the VMs with the same network and storage setup they expect to get in the private data center. No change to the VMs is required (read
more
).
Developers can utilize Compute Engine to develop and test on existing applications without the need to restructure them for public cloud.
The technology
Ravello was created by the team behind
KVM
(Kernel-based Virtual Machine) – the linux kernel virtualization infrastructure. Compute Engine itself is built upon the KVM platform and uses it as a high-performance hypervisor to run VMs.
Ravello has developed a high performance nested virtualization technology in order to abstract network, storage, and different cloud hypervisors. This abstraction enables existing virtual machines to be run on third-party hypervisors and on other clouds without any modifications.
The technology includes the following components:
High-performance nested hypervisor
– uses dynamic binary translation to run guest VMs unmodified on top of any cloud hypervisor.
Software-defined network
– provides a virtual fully fenced network that may include static IPs, multiple subnets, routers, switches, DHCP, DNS, firewalls and L2/L3 network/security appliances added by the user.
Storage overlay
– manages a distributed object store and connects it to the cloud provider’s local block storage.
Management layer
- provides the UI and API to create and manage multi VM environments and publish them to various cloud providers.
Getting started
You can check Ravello out on your own -- here’s what you need to do to get started:
Register
and activate your account (it’s free for two weeks).
Export your existing VMs from VMware, and upload them into your account. Alternatively, use one of our publicly available images and add some
Chef
recipes to set it up.
Create a new ‘application’ – this would be your fully fenced environment. Then, drag and drop selected VMs from the library into the application.
Select each VM in the application, update its IP and mask, and choose which ports would be open for external access on this VM.
Publish the application to Compute Engine. After a few minutes – login and play with your application.
Save this application as ‘blueprint’ (a snapshot of the entire environment, including all VMs and the network definitions). Using this blueprint, you may spin up identical copies of this whole environment with one click.
The combination of Ravello and Compute Engine provides developers and test engineers with the freedom to spin up complex environments on demand and accelerate development and test efforts.
For a live demo of the use cases mentioned above -
Join
our technical power session on April 29th with Google Cloud Platform.
-Posted by Hadas Birin, Director of Product Management at Ravello
Free Trial
GCP Blogs
Big Data & Machine Learning
Kubernetes
GCP Japan Blog
Firebase Blog
Apigee Blog
Popular Posts
Understanding Cloud Pricing
World's largest event dataset now publicly available in BigQuery
A look inside Google’s Data Center Networks
Enter the Andromeda zone - Google Cloud Platform’s latest networking stack
New in Google Cloud Storage: auto-delete, regional buckets and faster uploads
Labels
Announcements
193
Big Data & Machine Learning
134
Compute
271
Containers & Kubernetes
92
CRE
27
Customers
107
Developer Tools & Insights
151
Events
38
Infrastructure
44
Management Tools
87
Networking
43
Open
1
Open Source
135
Partners
102
Pricing
28
Security & Identity
85
Solutions
24
Stackdriver
24
Storage & Databases
164
Weekly Roundups
20
Feed
Subscribe by email
Demonstrate your proficiency to design, build and manage solutions on Google Cloud Platform.
Learn More
Technical questions? Check us out on
Stack Overflow
.
Subscribe to
our monthly newsletter
.
Google
on
Follow @googlecloud
Follow
Follow