Worried about cloud lock-in? Time to think about abstraction and smarter hybrid
"If you're going to be locked in, you should do it in a way that you control that lock-in. You should consider a smarter hybrid approach with an abstraction layer," says Muggie van Staden, CEO of Obsidian.
Multicloud – the ability to move workloads and data between different cloud environments for the best advantage – is a terrific proposition. If one cloud provider is more attractive than another at a certain point, you simply move the benefiting assets to that provider. Only, "simply" is far from accurate. Instead, vendor lock-in among cloud providers constrains companies more than they should.
According to a critical analysis on the topic, published a few years ago in the Journal of Cloud Computing, interoperability and seamless migrations between different providers is more aspirational than reality. The market is hampered by the lack of standard interfaces and open APIs, open standards for virtual machines and service deployment interfaces, and open formats for data interchange.
Put more simply, cloud providers are great at getting you in and less so when you try to leave. Despite all the talk of multicloud support, cloud vendors – particularly hyperscalers – do little more than the minimum to ensure some level of inter-vendor collaboration. The simple truth is that they'd prefer you keep the majority of your cloud needs with them.
Some may counter that this is not the case – that companies actively use multicloud. But as Van Staden explains, that may be a misreading of what multicloud should be:
"People call it multicloud when they use one service from Vendor A and another service from Vendor B. Maybe they use Office365 on Azure and storage on AWS. But that's not true multicloud, not until you can move workloads and data to the best location at a certain time. And what many companies have realised is leaving a vendor's cloud environment is often much more complicated than entering it."
Poignantly, he adds: "You should really ask your provider about how they help you leave."
Taking control of lock-in
But we cannot lay this entirely at the feet of cloud providers. They are, after all, competitive businesses. All the altruistic talk of multicloud does not belie the fact that they compete over market share. And in complex IT environments, lock-in is pretty much a fact of life. It can't be avoided.
But what if you could bring the mountain of lock-in to the company?
This is the view of smarter hybrid, a concept that says you can retain control by creating your own lock-in. What does that mean? By establishing an abstraction layer that you control, you effectively override whatever limitations are present at cloud providers.
"If you have something like Rancher and OpenShift, you then have the ability to control your workloads across the hyperscale all the way down to your edge, giving you true smarter hybrid IT," Van Staden explains. "You are in control. You still get the benefit of the hyperscalers and the wonderful scalability and availability, but you control things more. You have an abstraction layer that you're using to get the benefits out of the hyperscalers, but you're not necessarily going that deep into hyperscaler."
He adds a caveat: "Now, it's an interesting debate, because a lot of people will say, 'Well, if you go deep into a hyperscaler, it'll cost you less.' It probably will. But the reality is your choice goes out the window. Do you go for cost and quick deployment, knowing it will be harder to get out?"
In other words, it's not necessarily a bad thing to lock yourself in with a specific set of vendors. But those choices come with drawbacks. Are you still able to propagate your strategy, governance and such while maintaining agility?
An abstraction layer between your environment and the provider effectively puts the lock-in ball in your court, choosing to be more rigid about the abstraction technologies. If we look at the history of the cloud, this is a natural progression.
"One of the first abstraction layers we got was virtualisation. You could move a VM from one host to another, even though the hosts might have different CPUs underneath. Containers gave us the same idea. But over time, the standards for these have diverged among different cloud providers, making it harder and costlier to switch. So the evolution is logical: use an abstraction layer that plugs into these different environments, but you are in control of that layer."
The reality is you've got to lock into something. Lock into abstraction because it gives you choice and control. If you lock into a non-abstraction layer, you eventually lose both.