Falling portability star
Because Kubernetes allows applications to run on local systems, in the cloud, and at the edge, it has (also) been marketed as a defense against vendor lock-in. However, most user companies were confronted with ecosystem dependencies – for example with regard to storage, network, security, identity management or observability. In other words, the lock-in was merely relocated.
So often, what companies gained in workload portability, they lost to the complexity of the ecosystem: they standardized on Kubernetes, but remained heavily dependent on the managed services and operating conventions of a particular cloud provider. The result was a strange middle ground: the full complexity of a highly abstracted platform – without the simplicity of end-to-end use of native services.
This is even more important today because boards and leadership teams are less interested in theoretical architectural options. They are more focused on measurable business results and are looking for speed, resiliency, cost control and low risk. If a managed application platform, a serverless environment, or a vendor-specific platform-as-a-service offering gets them there faster, many are willing to accept a certain level of dependency. They recognize that strategic flexibility is valuable, but not at any price. Portability is just as valuable, but for many users it does not justify the operational and organizational effort associated with it. In other words: In many cases, Kubernetes delivers less than originally promised.
Abstraction alternatives are catching up
Perhaps the most significant shift, however, is that companies are increasingly moving away from purchasing purely technical basic building blocks. Instead, they rely on higher-level platforms that are more aligned with developer productivity and business goals. For example, platform engineering teams are increasingly “hiding” Kubernetes behind internal developer platforms. Public cloud providers continue to optimize managed container services, serverless offerings, and also integrated application environments that reduce manual infrastructure management efforts. And then there are the developers: They don’t value becoming part-time cluster operators. They want quick ways to build, deploy, secure and monitor applications – without having to cobble together a dozen different components first.
Kubernetes may still be there under the hood, but it is increasingly receding into the background and playing an increasingly smaller role in strategic purchasing decisions. Accordingly, companies are less concerned with the question of how to introduce Kubernetes. But rather with what the fastest, safest and most cost-effective way to deliver modern apps looks like.
They are increasingly finding the answer to this in curated platforms, development environments and managed services that abstract Kubernetes instead of exposing it. The aim is not to oppose cloud-native principles, but rather to avoid unnecessary cognitive load. Users realize that they do not have to “own” every layer of complexity themselves in order to enjoy the benefits of modern architectures.
