AWS has rolled out two major new features for its popular Elastic Kubernetes Service (EKS) – one of them involves customers “completely decommissioning” its autoscaling software Karpenter and AWS taking over responsibility for creating, deleting, and patching EC2 Instances.
At last year’s AWS Reinvent, talks on Amazon EKS packed out rooms – as the likes of Anthropic and Slack talked through their deployments. (Over 80% of Slack’s apps run on EKS; HSBC is among its other power users.)
See also: "Disruption budgets" and more: AWS’s Karpenter 1.0 lands
Among the highlights was talk around the use of Karpenter, an open source tool deployed by those wanting to cut the EC2 costs of their EKS clusters by provisioning spot instances and consolidating K8s pods; with Anthropic saying that it had cut its AWS bill by 40% through using it.
But adoption of one major new EKS proposition effectively makes Karpenter redundant by baking it into auto EKS management...
EKS Auto Mode... can manage core addons likescaling (Karpenter), networking (ingress), and storage (EBS CSI) for you. In addition, AWS will manage the worker nodes including AMIs, keep them upgraded, and cost optimized – Rajdeep Saha, AWS
As Re:Invent 2024 gets ready to kick off in Las Vegas (The Stack is on the ground for the event), Nathan Taber, AWS’s head of product for Kubernetes, has revealed what he calls “two of the biggest features we've ever built for Amazon EKS” – called “Auto Mode” and “Hybrid Nodes”
We took a closer look.
EKS Auto Mode: A sigh of relief
EKS Auto Mode, said Taber, “fully automates compute, storage, and networking management for new or existing Amazon EKS clusters.
This is Kubernetes for those without the time or inclination for heavy K8s wrenching and finessing (if you are already using a hyperscaler’s managed K8s service, perhaps that is you) and is much more heavily managed.
EKS Auto Mode “selects optimal compute instances, dynamically scales resources, continuously optimizes costs, manages core add-ons, patches operating systems, and integrates with AWS security services… In addition to the EKS control plane, AWS will configure, manage, and secure the AWS infrastructure in EKS clusters that your applications need to run.”
It is, in short, a very different approach to managing EC2 nodes with an equally different lifecycle approach. AWS has more details here and here.
EKS Auto Mode: Customisation still an option
Fear not: There’s still scope for customisation: “While EKS Auto Mode manages most infrastructure components automatically, you can customize node networking settings, node compute resources, storage class settings, and application load balancing behaviors” a blog showed.
One immediately happy end-user was New York Times principal engineer Ahmed Bebars, who posted on LinkedIn: “Imagine spinning up production-grade clusters with just a few clicks—no endless provisioning scripts or intricate scaling gymnastics. It’s all automated, streamlined, and ready to go… [it’s a] game-changer for those starting their Kubernetes journey and people like me who’ve been in the trenches for years”.
EKS Auto Mode subsumes EC2 optimisation itself and, as such, makes manual Karpenter use obsolete – customers can migrate (applications individual, or in groups) from Karpenter to Auto Mode using kubectl.
[You can] run Karpenter and EKS Auto Mode side by side during the migration period. This dual-operation strategy helps ensure a smooth transition by allowing you to validate workload behavior on EKS Auto Mode before completely decommissioning Karpenter. – AWS
And Taber was keen to emphasise that "Karpenter is part of Auto Mode, and you can migrate seamlessly from running Karpenter yourself to Auto Mote. You can also still use OSS Karpenter on EKS without Auto Mode."
EKS Hybrid Nodes
Also new from AWS is EKS Hybrid Nodes.
EKS Hybrid Nodes brings a unified Kubernetes management plane for those running EKS clusters and K8s on-premises Amazon said.
AWS’s Nathan Taber said on LinkedIn that it “lets you natively attach on-premises and edge infrastructure as nodes to Amazon EKS clusters.
This… offloads Kubernetes control plane management to AWS for on-premises and edge applications. Hybrid nodes works with any on-premises hardware or virtual machines, bringing the efficiency, scalability, and availability of Amazon EKS to wherever your applications need to run.”
As one hybrid cloud technical lead at Tata noted, EKS Hybrid Nodes may “eliminate the need to run self-manage[d] nodes on AWS Outpost in on-prem environments and solve the Outpost capacity issue…”
Both represent welcome releases for EKS users. Whether AWS will continue to publicly maintain Karpenter to the same level whilst encouraging users to basically hand over management of it via EKS Auto Mode is an open question, but it is Apache 2.0 and widely forked already so there is arguably little need to worry on that front and updates have continued to flow from its 340+ maintainers.