No cloud is perfect. And after some very public cloud outages, business customers are looking harder at divvying up their workloads among multiple clouds to mitigate risk.
The latest glitch was a 19-minute Elastic Compute Cloud connectivity issue at Amazon’s (s amzn) U.S. East region early Thursday morning. (More on this here and here.) Earlier this month, a 12-hour Leap Day Azure outage afflicted Microsoft’s Windows Azure(s msft) cloud.
With these snafus, business customers are starting to realize that, while cloud computing can cut costs, it is no panacea: Clouds run on data centers and data centers go down.
To hedge their bets, businesses are looking into multi-cloud solutions. That means companies that used to default to Amazon Web Services (AWS) might take a harder look at enterprise-class clouds fielded by Joyent, Terremark (s vz) or Savvis(s ctl).
Special clouds for special workloads
Ty Amell, CEO of StackMob, a company that runs his mobile software development business on several clouds, says he sees the same trend emerging among customers.
“There are many advantages to the cloud, however it takes a different type of thinking when running cloud infrastructure. When architecting your system, you have to plan for any piece of it to be down at any time. This includes an entire availability zone or cloud service,” Amell said via email.
Bigger companies, at least, are divvying up their workloads, putting specific pieces in the cloud that makes the most sense. “If you have your data replicated, it is fairly trivial to spin up new servers somewhere else, or turn on idle ones. Having a multi-cloud strategy doesn’t mean you won’t have downtime, but you shouldn’t have the massive downtime we’ve seen with some companies when AWS has problems with their EBS volumes or Azure goes down,” Amell said.
Charlie Robbins, founder of Nodejitsu, agreed that multi-cloud deployments are driven by the desire to boost fault tolerance, to reduce latency between parts of their applications and to take advantage of specific features offered by a particular infrastructure-as-a-service vendor.
Of course, it’ s easier just to forkload a given application onto a single cloud and deal with one provider, but the fact that we’re well along into the cloud-computing era means that businesses are getting more sophisticated about what they can do to optimize their workloads and mitigate failures.
Greg Arnette, founder and CTO of Sonian, who has blogged on this topic, said cloud computing is succumbing to the traditional IT buying cycle. Customers start buying everything from one vendor, then move to best-of-breed services for different parts of their solution. He doesn’t see many Sonian customers deploying to multiple clouds now, but they’re headed in that direction.
Coming: Name-brand clouds
“They’re not mixing use cases, but over time, they will want a cloud based on brand name, the same way they choose internal IT. Every major vendor will provide a branded cloud; we’re just at the beginning of that curve,” Arnette said. That process is already underway with IBM SmartCloud(s ibm), Microsoft Azure and Fujitsu Cloud.
And the fact is, some clouds are better suited for some tasks than others. Companies running the popular Node.js server-side framework for data-intensive-real-time (or DIRT) applications may run out of gas on generic public clouds once the workload scales up. At that point, it makes sense to put at least those intensive workloads on Joyent or another cloud that handles low-latency disk and network I/O loads better than a vanilla public cloud, Robbins said.
Roger Jennings, CEO of software consultancy OakLeaf Systems, said his customers think about multiple clouds but typically end up rejecting the multi-cloud option. “DevOps issues with failover times and/or content sync cause them to stick with their original [single cloud] choice,” he said via email. DevOps refers to the software building process in which developers work with the operations side of the house to make sure goals are aligned.
Still, as companies get more sophisticated in their understanding of what clouds can and can’t do, look for more of them to split their computing loads among the clouds that suit each piece best.