I was on the phone with Chris Porter today (side note - I was quickly impressed with his knowledge) and he made an interesting point about running dev/test workloads in the cloud. “If my production is on AWS, I’d certainly want to run my dev & test there”, he said. “But if my production is on premises on VMware, I’d like dev/test environments in the cloud that can be turned on and off on demand but the problem is they need to be very very similar to my on prem production deployment” . It sparked an interesting conversation on migrating from VMware to AWS, on cloud migration tools, cloud networking constraints, when to re-architect an application for a full-fledged production application migration process and how to approach the problem when it’s for dev/test only.
I’m a huge advocate of the no-migration approach to moving dev & test workloads to the cloud- in fact I may be guilty as charged for coining the phrase “Migration is for the birds, my VMs are nested” but the fact remains that when you need to move your dev & test workloads to the cloud, you do need to consider the various scenarios and migration options out there. Ravello’s nested virtualization approach puts us in an entirely different category - we are a cloud provider that provides VMware-like or KVM-like environments in AWS/Google Cloud. As a result, we haven’t had too many conversations with customers about some of the migration tools out there such as Racemi, CloudVelox, Hotlink but we do guide customers to use the AWS import utility to convert VMs, re-do their networking and re-think their application architecture if they are migrating their entire production application to AWS. But when they are looking at migrating dev & test workloads to the cloud, we (obviously) strongly recommend Ravello.
To summarize, here is a quick cheat sheet I came up with:
If you run your production on premise - say on VMware for example - then you have ample reason to migrate your dev & test to the cloud. The promise of just-in-time environments that can be created and destroyed on demand, coupled with never having capacity constraints (yes, no more QA environment bottlenecks as you get closer to release) is sufficient justification. However the challenge has always been the issue of high fidelity dev & test environments. How do you have confidence in your test results if the environment in the cloud looks very different from your on-premise production environment? This is why increasing number of VMware customers are turning to other VMware based clouds such as vCloud Air, or vCloud partner cloud providers so that they can get similar environments on premise and in the cloud. Some would argue that it’s not the same as having the price, reliability and flexibility of some of the leading clouds in the world such as AWS & Google Cloud. And I would argue that Ravello has stretched the “sameness” frontier by recreating VMware and KVM like environments in AWS & Google by using nested virtualization. Majority of Ravello’s customers such as 888 Holdings are running their production on either VMware or KVM in their private data center and instead of converting their VMs or modifying the networking in their dev/test environments to run them on AWS, they simply “nest” them as-is on Ravello.
If your production and dev/test is already in the cloud - migration is a moot point isn’t it? And if your production is on-premise and dev/test is already in cloud, you seem to be on the right track as long as you haven’t changed your dev & QA environments to “fit” them to the cloud of choice. And finally if your production is in the cloud and for some strange reason your dev/test is on premise, you better have a very good justification because in terms of capacity utilization it’s not ideal to have your prod running 24x7 in the cloud while your dev & test workloads which tend to be more bursty are running in house.
In any case, I'm eager to hear your thoughts on running production on premises on VMware and your dev/test workloads on AWS. How did you approach the problem? And shameless plug..but you do get a 14-day free trial if you'd like to try Ravello for dev/test.