Nearly a third of the money businesses spend on cloud is going to waste. And with companies around the world feeling the economic pinch, including here in the UK, many are taking a closer look at their cloud spending.
The reality is that far too many businesses are stuck in a painful loop, putting all their eggs in one or two cloud providers’ baskets and missing out on potential financial, bandwidth and performance benefits. The good news is it doesn’t have to be this way: Adopting a more nuanced and optimized approach to managing cloud-native spending isn’t as challenging as we’re often led to believe.
‘Cloud Native’ = Portability? Check Again
All too often, proprietary cloud-based products and services are promoted within the context of ‘cloud native.’ You can argue that that’s true based on design patterns, but this results in applications that are ‘platform native.’ What do these terms actually mean?
Cloud native boils down to an approach for rapid application development and deployment that uses specific technologies (built using microservices and containers and running on platforms like Kubernetes) to take advantage of the elasticity, agility, scale and flexibility of on-demand resources in public, private and hybrid cloud environments.
The Cloud Native Computing Foundation governs the official definition, and they do an excellent job at nourishing an ecosystem of vendor-neutral, open source projects that enable cloud-native development. They also do an excellent job at promoting portability (meaning the ability to move your deployment from one provider to another) but their official definition of cloud native lacks true enforcement of portability.
What this means is that the majority of businesses today are building applications with a cloud-native design using containers, managed services and service meshes, but they’re built within the walled garden of a particular cloud platform. The applications that run on this cloud will be using tools and services that only exist on that particular platform. These applications aren’t portable—they’re platform-native.
The Power of Portability
When an application isn’t portable, it’s locked into a particular vendor, which leaves the business vulnerable to that vendor’s changes in pricing, terms of service, updates or end-of-life decisions. The business implications of this are clear.
The irony is that often, businesses have multiple cloud workloads with different traits and it often makes sense to house them with different providers. For example, what if you have two workloads you want to put in the cloud? One is a core, business-critical workload that must run optimally at all times; another is a very bandwidth-heavy workload. You have two options: Option one is to put them all with one provider. Perhaps that’s easier initially, but it’s also very costly and can lead to tricky issues later.
Or, there’s another option: You put the critical workload with the premium provider, the one that has the good customer service and infrastructure and put the heavy-bandwidth workload somewhere else, such as a provider that has a more competitive bandwidth pricing structure. To achieve this, rather than relying solely on a single cloud provider, you would use a mix of open source technologies that provide the same or similar functionalities, combined with mixing and matching the core cloud infrastructure basics, like compute, storage, networking and more.
This just makes good business sense. You’d go for this diversified approach in any other aspect of business, so why not with cloud computing?
Bringing Choice Back Into the Picture
To achieve this, your workload needs to be portable; built with the right open source tools so that it can easily be moved from one platform to another.
This often looks difficult from the outside, especially if you’re used to working with a single hyperscaler cloud provider. Their business model relies on making their customers’ lives easy with lots of different products and services to abstract away complexity, but this is exactly how businesses end up with huge, difficult to understand bills. It’s also how they end up lacking agility in the cloud landscape.
Data portability doesn’t have to mean more work or more complexity. Look at it as taking a different approach to deployment—different does not inherently mean difficult. I firmly believe that the upfront investment in setting up a multi-cloud environment in a more portable way is well worth the effort. Ultimately, it enables you to focus on what matters most—your applications, your end users and your business.
I’m hugely impressed by the cloud-native products, innovations and achievements that are achievable with the cloud. I want us to be able to continue to flourish in the cloud with cloud-native apps, environments and tools. I want the organizations in the cloud to continue pushing the needle forward—and for cloud to be an enabler of this innovation, rather than a complex obstacle.