Helder Almeida - Fotolia
Published: 20 Sep 2016
The idea of adopting a multi-cloud strategy to be more resilient and avoid vendor lock-in is a concept nearly as old as cloud itself, but it's still rare to see a business take this approach. Using multiple clouds as part of a risk mitigation strategy is still more theory than practice because of the stubborn challenges involved with moving and managing workloads across different platforms.
That impetus toward multi-cloud has evolved over the years, but it has never quite gone away. For example, ThoughtSTEM, a San Diego-based provider of cloud multiplayer games, has a multi-cloud strategy -- not due to reliability fears, but mainly to avoid vendor lock-in, said CEO Stephen R. Foster. In reality, though, he admits almost all of the time ThoughtSTEM runs its game servers on Amazon Elastic Compute Cloud. "However, our system allows us to painlessly switch to other clouds whenever we want," he added.
As the cloud has become an increasingly mainstream phenomenon, concerns about cloud provider reliability are less central to the multi-cloud idea, experts say, though vendor lock-in remains an issue. And for a variety of practical reasons, the original concept has gradually transmuted more into a practice of using multiple cloud vendors to achieve other goals, such as lower cost or better performance for certain workloads.
"There has definitely been a transition; multi-cloud today is much less about resilience and hedging bets and more about matching workloads to services," said Melanie Posey, research vice president at IDC.
The comfort level that enterprises have with the public cloud has grown, she said. When they do think about a risk mitigation strategy, it is a more traditional approach, with disaster recovery and backup tools or perhaps implementing cloud workloads in multiple availability zones, Posey said.
"From a cloud perspective, I have not seen any of my clients go to a 'pure' multi-cloud strategy, though I have seen many go to the different-workloads-to-different-providers concept," said Ed Featherston, an enterprise architect and a director at Collaborative Consulting in Burlington, Mass. Sometimes, that latter category was populated by de facto multi-cloud adopters where, for example, users had created new workloads in a cloud without IT being aware it was happening. In other cases, he noted, multi-cloud was a result of acquisitions where the merging companies were using different vendors for their cloud implementations.
Putting multi-cloud in context with other historic technology trajectories, Featherston compares cloud today to the early days of relational databases. "SQL was defined as a standard that was supposed to prevent vendor lock-in for relational databases," he said. But that's easier said than done. Eventually, each vendor offered their own special features and variations of SQL to provide extra benefits, so shifting from one vendor to another became more difficult, Featherston said.
Risk mitigation no longer prime motivator
That's why, in Featherston's view, using multi-cloud as a risk mitigation strategy has remained more theory than practice.
To put it more emphatically, "It's not trivial to move workloads between platforms," explained Dan Conde, an analyst with ESG. "You can import workloads, but it's not like running vMotion between vSphere systems to perform a live migration between Azure or AWS [Amazon Web Services]; that is not possible."
Ed Featherstonenterprise architect and director, Collaborative Consulting
One of the primary reasons why this is still more theory than practice is because certain clouds are better for certain workloads. "Trying to have those workloads running across multiple clouds means you will, by that very nature, have inconsistent performance," said Clayton Weise, director of cloud services for Key Information Systems, a regional systems integrator based in Agoura Hills, Calif.
One of the other large barriers is the network, he noted, which is to say that all of the cloud providers are in competition with each other and see no benefit in providing private high-speed links to their competitors' cloud. In other words, network integration must take place over the public internet, and that increases latency, leading to inconsistent performance.
"All of this is further complicated by the fact that each provider has its own API, capabilities and features, which don't always have parity with one another," Weise said. Furthermore, the lack of an open standard on all of these things makes interoperability extremely challenging and forces the enterprise to build its own tools. "This capability -- [being a] manager of managers, orchestrator of orchestrators -- is the new burgeoning realm in cloud adoption," Weise said.
Putting those issues into concrete terms, it boils down to tradeoffs, Featherston said. "The risk mitigation use case of employing a multi-cloud strategy is a classic case in point," he said. In theory, he explained, it gives the business more protection and resiliency by not being dependent on a single cloud vendor platform. However, there is a long list of tradeoffs.
According to Ed Featherston, some of the tradeoffs involved in implementing multi-cloud include:
- Ensuring the workload is designed and implemented in a way that is platform-agnostic.
- Additional testing to ensure application changes continue to function in both environments.
- Additional testing efforts for failover scenarios between vendors.
- Developing SLAs with the different vendors to ensure consistency between platforms.
- Developing support, deployment and operations processes with multiple vendor teams at each cloud platform.
- Not being able to use features one vendor offers that others don't.
- Having tools to manage the multiple platforms. This is a particularly substantial hurdle because each vendor has its own platform with its own unique features. "There are various open source tools out there to mitigate this, but then again, there is the tradeoff of generic features versus specialized ones available on only one platform," Featherston said.
Maturing needs in a maturing market
Platforms, services, capabilities and uses have evolved now that we're 10 years into the era of cloud providers. There is now more expertise on how to create production-ready, resilient technology. Posey noted that all cloud providers have evolved from just offering VMs and storage; they keep adding more services and making their clouds more secure, resilient and fault-tolerant. "It is part of the evolution on the part of the cloud providers to make their offerings as enterprise-oriented as possible," she said. For example, AWS introduced its Key Management Service a few years ago for policy and risk management.
That means cloud providers -- especially the major ones -- offer big benefits that are vital to customers. So lock-in has taken on a new meaning. Companies such as Netflix and Apple have created in-depth offerings using cloud services such as Lambda and Glacier on AWS. "That means the only alternative to that provider is to completely rewrite your solution," said Lauren Nelson, an analyst at Forrester Research, based in Cambridge, Mass.
For now, she noted, Netflix says it is happy with the Amazon relationship. Apple, for its part, has said it is adding Google cloud services to its AWS and Azure mix. "That gives them some negotiating power for net-new services," Nelson said.
Conversely, Microsoft says it will help you take a hybrid approach -- building instances on Microsoft, on premises, or even in another cloud, she noted. But even that concession to portability only works if you use platforms with a single vendor -- in this case, Microsoft -- underpinning both the private and public side.
There are two options that may eventually open the door to multi-cloud. The first is the growth of container technology, Nelson said. Packaging an application along with its dependencies in a container holds the promise of allowing or at least simplifying portability across clouds.
Still, she noted, "the challenges are that all the context for an application will still be proprietary, the current maturity level of container technology is low and the attractive and proprietary features of each cloud provider would not be available."
If you want to look toward a viable future for multi-cloud, Nelson advises keeping an eye on the second option: standards. Efforts such as the Distributed Management Task Force and the Topology and Orchestration Specification for Cloud Applications aim to provide a standard to describe the topology of cloud-based web services. "Those efforts have a goal of broad 'readability' across platforms so that there might one day be true portability," Nelson said.
But that day is still some distance in the future. For now, it looks like multi-cloud portability remains an elusive dream.
Learn how to handle cloud sprawl
- Expert guide to managing services from multiple cloud providers –ComputerWeekly.com
- Multi-Cloud Management –ComputerWeekly.com
- CW ASEAN: Juggling in the cloud –ComputerWeekly.com
- How to Plan for, Deploy, and Manage Multi-cloud Storage –ComputerWeekly.com