Kubernetes

Kubernetes 1.37: KubeletInUserNamespace (rootless) and HPA scale-to-zero Move to Beta

Kubernetes 1.37 advances rootless Kubelet and Beta HPA scale-to-zero enabled by default, easing developer workflows but shifting node and autoscaler assumptions

September 7, 2026·3 min read·AI researched · AI written · AI reviewed

Kubernetes 1.37 just landed a pair of changes you should prioritize testing: a cluster-facing path for rootless nodes (KubeletInUserNamespace → Beta) and a HorizontalPodAutoscaler scale-to-zero capability that’s now Beta and enabled by default. Both are small API moves on paper; in practice they rearrange operational assumptions about node privileges and how services wake up from zero.

Rootless kubelets — the game-changer for node hardening

The clearest security/operability shift in v1.37 is KubeletInUserNamespace graduating to Beta. This is the first mainstream, supported trajectory for running the kubelet inside a user namespace — i.e., reducing or removing the kubelet’s global root privileges on the host. That matters for two reasons:

  • It makes a realistic hardening path for developer and shared clusters where host compromise risk is high.
  • It eases developer-local workflows that want node-like behavior without giving full root on the machine.

This isn’t a magic switch — rootless kubelet still forces you to reconcile cgroup drivers, node init tooling, and how CRI runtimes are started. It also interacts with runtime capabilities: ensure your container runtime and CRI implementation support user namespaces and unprivileged container execution, and plan upgrades to supported containerd/CRI-O releases before broad rollouts. If you haven’t flagged rootless for your fleet yet, do it now: the ecosystem will move fast to rely on this capability and vendors will change defaults around privilege assumptions.

(If you want a deeper technical explainer on the user-namespace kubelet path, see our previous piece: KubeletInUserNamespace (rootless) Graduates to Beta in Kubernetes.)

Scale-to-zero enabled-by-default — cheap, disruptive

Making HPA scale-to-zero Beta and turning it on by default is the other big operational pivot. Historically HPA kept a floor of one pod; now workloads that can fully quiesce will be allowed to drop to zero. That’s fantastic for cost if you run sporadic workloads, batch APIs, or ephemeral dev services — but it will surface brittle assumptions everywhere:

  • Service meshes and sidecar initializers that assume an always-on pod will see increased cold starts and potential traffic black-holing.
  • Metrics pipelines and scraping setups that expect a stable endpoint will have hole-punches, skewing SLOs and alerting thresholds.
  • Anything depending on pod IP continuity or NodePort reachability will need workarounds (or controller-level annotations preventing zeroing).

Enabling scale-to-zero by default was the right call; the alternative was ad-hoc, vendor-specific implementations (KEDA, custom controllers) proliferating. But be prepared: fleet-wide enablement will break assumptions faster than you can roll a canary.

Control-plane efficiency and the boring-but-important bits

v1.37 also includes etcd watch and range-request streaming improvements promoted to Beta — expect lower memory usage for large list reads and better control-plane scalability in big clusters. This kind of change quietly reduces tail latency and kube-apiserver memory pressure under heavy list/watch churn.

Dynamic Resource Allocation (DRA) continues to evolve in the release — API surface growth here means scheduler and admission-controller interactions will need testing if you consume advanced resource slices. On the runtime and tooling side, keep an eye on container runtime and desktop tooling updates: make sure your containerd/CRI-O and developer-desktop tooling are on supported releases as the ecosystem shifts.

Final take

Kubernetes 1.37 is not shy: it promotes features that shift default operational models. Rootless kubelets remove a longstanding easy target for attackers — and that alone makes this release overdue. Enabling scale-to-zero by default is equally bold: you’ll save money but also inherit a new class of availability and observability problems.

If you run clusters, do two things this week: kick off a non-prod test of KubeletInUserNamespace on a tiny fleet, and run integration tests for scale-to-zero against your mesh, metrics, and CI/CD pipelines. In 12 months these features will be the baseline assumption for many cloud offerings — teams that ignore them will inherit surprises, not advantages.

Sources

kuberneteskubelethorizontal-pod-autoscaleretcd
← All articles
Kubernetes

KubeletInUserNamespace (rootless) Graduates to Beta in Kubernetes

KubeletInUserNamespace (rootless) promoted to beta in Kubernetes, shifting node security and forcing runtimes, images and provisioning to be userns-aware.

Sep 6, 2026·3mkuberneteskubelet
Kubernetes

Kubernetes v1.37: DRA Extended Resources GA, HPA scale-to-zero (beta), etcd RangeStream (beta)

Kubernetes v1.37 promotes DRA Extended Resources to GA, enables HPA scale-to-zero (beta), and graduates etcd RangeStream to beta—practical ops changes.

Sep 5, 2026·3mkuberneteshpa
Kubernetes

Kubernetes v1.37: HPA scale-to-zero Beta (enabled) and StorageVersionMigration v1 GA

Kubernetes v1.37 enables HPA scale-to-zero (Beta, default on) and graduates StorageVersionMigration to GA, shifting migration work into the control plane.

Sep 4, 2026·3mkuberneteshorizontalpodautoscaler