Every Cloud provider wants you to sign up for their services. To do that, they will offer you some free services. Amazon for instance has the Free Tier. Google Cloud will give you $300 for a free trial. Heroku will give you free dynos. They’re doing this for one reason: once a company uses one Cloud provider they’ll not easily change to another one.
There is a simple solution to avoid Cloud Vendor Lock-in. If your infrastructure team embraces the virtues of DevOps, they should write their infrastructure deployment in Code, using popular software like Chef, Puppet, Ansible. Most people already write their deployment of software in code, but the actual infrastructure deployment is often forgotten.
Instead of just pushing deployments to servers, DevOps should script and program the full infrastructure. Are you using Amazon VPC, Route 53, Elastic Block Storage, and EC2 machines? These services can easily be provisioned by tools using programmed definitions: you define your network, your block storage, the type of machines. Once you have this in code, it doesn’t really matter anymore where you deploy this: on AWS, on Google Cloud, or any other providers. You might have to tweak the settings a little bit and have time to spend on it, but it’s pretty straightforward.
The big tech companies already use multiple cloud providers. Google drops its prices? Let’s switch some infrastructure over to google. You’re not happy anymore with Amazon? You can easily switch. Disaster Recovery plan? As simple as redeploying everything from code to another Cloud Provider.
If this all sounds interesting, maybe it’s time to talk to us!
Containers like Docker can be helpful, but is not a necessity. There is a big push today to move to containerization, but it might be still a bit early to run this in production.