In this guest post, Rob Greenwood, CTO at Manchester-based cloud and DevOps consultancy, Steamhaus, sets out why the emergence of Amazon’s managed Kubernetes service is such good news for the enterprise.
In just four years since its conception, Kubernetes has become the de facto tool for deploying and managing containers within public cloud environments at scale. It has won near universal backing from all major cloud players and more than half of the Fortune 100 have already adopted it too.
While alternatives exist, namely in the form of Docker Swarm and Amazon ECS, Kubernetes is by far the most dominant. Adoption has been so pervasive that, even in private cloud environments, the likes of Mesosphere and VMware have fully embraced the technology.
Perhaps the most significant development though, was AWS’s general release of its managed Kubernetes service (EKS) in June 2018. Amazon is well known for listening to its customers and the desire to see Amazon provide a managed service for Kubernetes was palpable – it was one of the most popularly requested features in AWS history.
Despite developing its own alternative in ECS, AWS decided to go with the will of crowd on this one and offer full support. This was a wise move when you consider that 63% of Kubernetes workloads were on AWS when Amazon announced it EKS (although by the time it was made generally available this was said to have fallen to 57%).
Not having this container service for Kubernetes in place was also creating a few headaches for its users. As Deepak Singh, director at AWS container services, explained: “While AWS is a popular place to run Kubernetes, there’s still a lot of manual configuration that customers need to manage their Kubernetes clusters… This all requires a good deal of operational expertise and effort, and customers asked us to make this easier.”
The benefits of curing the Kubernetes management issues
If truth be told, this created a lot of work for teams like my own – which you might think sounds like a good thing. But building and managing Kubernetes clusters is not really the way we would like to use a client’s budget, especially if an alternative exists.
With a managed service now available, we can focus on optimising the overall architecture, migrating applications and enabling our clients to adopt DevOps methodology instead.
Being a multi-cloud platform, organisations could have, in theory, just moved their Kubernetes clusters to another public cloud provider that would support it. But that would have involved even more time and expense and, perhaps more importantly, you would be moving away from many of the features that AWS offers.
With AWS now offering to take care of the build and management side of Kubernetes, however, those difficult decisions don’t need to be made. With all the major public cloud platforms now supporting the technology, the providers will take care of the build and management. This means improvements will be made to ensure we have better integration, scaling and availability. As time goes on, this will only get better and, from the client’s perspective, the assumption is that this will also lead to significant cost savings later down the line.
You could reflect on the current situation and say it’s not good for one technology to be so dominant, but I’m really struggling to see the negatives. It is cheaper for organisations, AWS retains its customers base and the cloud architects get to focus on the job they’ve been brought in to do.
Of course, as an industry we can’t rule out the possibility that new innovations may come along and change the game once again. But, for the time being, the debate is over: we’re working with Kubernetes. And this should end some needless back and forth, allowing us to focus on better ways to introduce new features, scale and secure public cloud infrastructure.