We’ve all heard the phrase, “don’t put all your eggs in one basket.” It’s a simple, but profound message that many of us forget on a daily basis, largely because we think “it can’t happen to me” or finding workable alternatives is too difficult. When it comes to the cloud the same idea prevails. But that road leads to failure. And if you’re willing to put a little up front work into your cloud adoption strategy, you will definitely come out the winner in the long run.
Cloud providers are happy to tell you they have a magic bean that you can install, and “Boom!” you’re cloudified and you need look no further for additional options in terms of providers. So you gently place all your eggs in one cloud basket, then go home and pet your Unicorn while sprinkling pixie dust all around.
Sure, there are myriad solutions available today that individually can solve some of your application requirements such as Joyent, Amazon, Rackspace, VMware, HP, CloudSigma, CloudProviders, etc. However, I haven’t heard any of these providers working on distributing your cloud risk across other solutions. They have choices for hybrid clouds, or public & private blends, but when they talk risk avoidance, it’s the same cloud, with an additional location. To be fair, I don’t blame the providers, it’s up to us as customers to ensure we’ve effectively managed the risk for our business. You can’t lay that responsibility on a vendor.
One cloud – Not even a distributed one?
There are inherent risks with putting all your eggs in one basket, regardless of the elegance or marketing of that basket. Any single technology platform brings with it the risk that a single platform specific issue could adversely affect the whole. I’ve seen too many problems occur in production, even after successful testing, and the reality is that in most cases you just can’t test against every potential environment or use scenario. So, yes the risk remains, regardless of zoning or regional distribution. As the saying goes, the strength of a chain is dependent on the weakest link.
As you develop your technology ecosystem and what I like to call your Fluid IT operating model, you should be creating a strategy for adopting and using multiple cloud platforms, in part to help you reduce your single supplier risk. However, reducing risk of an outage isn’t the only reason you should look for a multi-cloud solution. There’s also the assumption that if you’ve developed an environment that allows you to utilize multiple clouds, you are enriching your ecosystem, and are likely better allocating your workloads and using geographic diversity to better serve your customer.
Sounds great, but how can I manage multiple clouds?
As mentioned in the Fluid IT blog the ability to absorb new technologies and platforms seamlessly is critical. It’s important to note that the faster you can provision critical infrastructure, the faster you can get yourself and your business in trouble, which is why a strong management platform is so critical.
How many of us in IT have built “test” environments for an applications team only to find they’ve been pushed into production without any oversight, governance, change management or even IP address updates? Now, consider how wrong things could go in a cloud environment where there’s no governance, oversight, etc. in place to assist in the process of moving apps from a test environment to production. All clouds need a strong management platform that helps automate and manage specific aspects of a code deployments.
And when it comes to trying to spread an application or several applications across multiple clouds, the need for a strong management platform becomes even more crucial. If the lack of widespread management tools gives you the shivers, realize that the other alternative is to keep everything manual and turn your rapid deployment infrastructure into a Ferrari stuck in traffic. Yes, the car is fast, but it doesn’t matter when stuck on the 101 during rush hour.
So, no, you shouldn’t be on just one cloud, but you also shouldn’t be on any cloud(s) using weak management tools, or worse attempting to do your policy, governance, change management and capacity planning by hand.
Is it really worth it?
There are myriad benefits to being able to use clouds from several different providers, such as reduced risk, having access to the right infrastructure for the right workloads, getting the best price for jobs, and optimizing distribution to address latency concerns. However, there isn’t a simple answer to adopting multiple clouds for any individual workload. That effort will take time and hard work. So, even if your first goal is just to distribute your risk by application, not across applications, you’ll still be better off by hiring a bunny (cloud management) that can manage several baskets using the same controls, governance and policy. Then work through the bunny to distribute your eggs (workloads) across baskets (clouds).
Mark Thiele is executive VP of Data Center Tech at Switch, the operator of the SuperNAP data center in Las Vegas. Thiele blogs at SwitchScribe and at Data Center Pulse, where is also president and founder. He can be found on Twitter at @mthiele10.
Image courtesy of Flickr user ralieghwoman.