Amazon has become a good Kubernetes citizen. That might not be what the Kubernetes crowd was hoping for.
As of re Invent 2017, Amazon Web Services (AWS) loves Kubernetes and is official “all in” on the open source container orchestration project. Given that 63% of Kubernetes cloud workloads already run on AWS, coupled with AWS’s stated goal of enabling maximum developer choice, it was perhaps a foregone conclusion that AWS would roll out Amazon Elastic Compute Service for Kubernetes (EKS), a managed Kubernetes service to rival those already offered by Microsoft and Google.
What isn’t certain, however, is what happens next. After all, almost in the same breath that AWS chief Andy Jassy announced EKS, he also announced Amazon Fargate, a serverless option for managing containers. In so doing, Rishidot founder Krishnan Subramanian has argued, Fargate could make “Kubernetes a sideshow [for] container cluster management.”
From hero to zero in just one click?
Not quite the Xen we were hoping for
According to Subramanian, the answer is definitely maybe. By his reckoning, AWS is the runaway leader in the cloud computing space and they are a runaway leader in the number of Kubernetes deployments as well. They are in the process of creating a service that will take the pain out of cluster management and integrate it with their managed Kubernetes service. What could go wrong for the Kubernetes community?”
The answer, of course, is “a lot.”
After all, the Xen crowd used to crow about AWS depending on it for its virtualization needs. This was true…until it wasn’t. In November 2017, rumblings started that the cloud giant was moving from Xen to the rival KVM project. But even when it was true, as Subramanian hints, Xen’s primary sponsor, Citrix, didn’t get a chance to parlay that influence into a prominent cloud role. In the AWS cloud world, only AWS wins.
What’s good for developers?
That’s not really true, though. AWS hasn’t dominated the cloud market by constraining choice, but instead by expanding it. In his re Invent keynote, Jassy declared the company aims to provide all the necessary services to enable developers to build the future. For AWS competitors rallying around the Kubernetes flag, however, this will come as cold comfort.
True, AWS is determined to be a good Kubernetes citizen, increasingly participating in the open source foundation that backs Kubernetes. But AWS has never been shy about its biggest ambition: Remove barriers to developer productivity. If stock Kubernetes, with all its tooling, is less efficient than running EKS, well, AWS is just putting its customers/developers first, rather than an open source project. And with Amazon Fargate, this hits overdrive.
During the 2017 AWS re invent … I had conversations with senior IT managers of large enterprises including some well-known brands “we hear” regularly. Most of them were running their own Kubernetes managed clusters on top EC2 and almost every one of them said they will move from their DIY Kubernetes to EKS offered by AWS because it makes both productivity and economic sense.
With most Kubernetes workloads already running on AWS, the “rich” just got richer, with even more Kubernetes workloads likely to find their way to Amazon’s EKS. The real question, as Subramanian highlighted, is whether those same enterprises will stop at EKS when they could eliminate the need to bother with servers altogether by going to Amazon Fargate. That’s certainly the message he heard from enterprises with which he spoke:
They also said that once Fargate becomes an abstraction on top of EKS, they will embrace it because Fargate removes operational friction and makes running container clusters seamless (sucking the juice out of their dependence on Kubernetes). After Fargate makes Kubernetes a sideshow in their container cluster management, how long will it take AWS to give an easy on-ramp to ECS?
Today, most enterprises have tended to rally around Kubernetes, the industry standard for container orchestration. It’s the brand developer’s trust. But so is AWS, and AWS commands much more developer fealty than Kubernetes does (impressive as Kubernetes’ community is). As such, if we assume developers/enterprises simply want to “get stuff done” as efficiently as possible, Subramanian isn’t crazy to argue that by AWS embracing Kubernetes and “extending” it with Fargate (and Elastic Container Service (ECS)), AWS could end up burying Kubernetes.
If so, it wouldn’t be out of some nefarious design to hurt competitors, but simply out of an effort to improve the lives of developers who want ever-easier ways to work with containers.