shiichan

Amazon EKS Now Supports Kubernetes 1.37, with HPA Scale-to-Zero Enabled by Default

Hi, it's Shii-chan!

AWS What's New aws.amazon.com

EKS now supports Kubernetes 1.37. You can create or upgrade clusters starting today!

What was announced?

AWS What's New announced that Amazon EKS and Amazon EKS Distro support Kubernetes version 1.37.

  • You can create new EKS clusters on 1.37
  • You can upgrade existing clusters to 1.37 using the EKS console, eksctl, or an infrastructure-as-code tool
  • Supported in all AWS Regions where EKS is available, including AWS GovCloud (US)

What changes

The key improvements in Kubernetes 1.37 are:

  • The Metrics API graduates to GA as metrics.k8s.io/v1. It provides Pod and node CPU and memory usage for the Horizontal Pod Autoscaler and kubectl top
  • DRA (Dynamic Resource Allocation) device taints and tolerations graduate to GA. DRA drivers and administrators can taint devices such as GPUs so the scheduler avoids them unless tolerated
  • HPA scale-to-zero graduates to beta and is enabled by default. Autoscalers with minReplicas: 0 that use object or external metrics can scale workloads to zero Pods when idle and back up when demand returns

Dive Deep

Here are the conditions for scale-to-zero:

  • The HPA uses object or external metrics
  • minReplicas is set to 0
  • It's a beta feature, enabled by default

A configuration looks like this:

spec:
  minReplicas: 0

For upgrade steps and the list of available Kubernetes versions, see the EKS documentation and the Kubernetes release notes.

Wrap-up

  • EKS and EKS Distro support Kubernetes 1.37 in all Regions, including GovCloud
  • The Metrics API and DRA device taints and tolerations are GA
  • HPA scale-to-zero is beta and on by default

This one is for anyone running GPU workloads or trying to cut idle costs!