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

Docker Desktop 4.96.1 update and runc 1.6.0-rc.1 signal cgroup v2 migration

Docker Desktop 4.96.1 updates local image-build tooling; runc 1.6.0-rc.1 accelerates cgroup v2 adoption - platform teams should test runtimes, containerd, and CI.

Oct 22, 2026·3mdocker-desktoprunc
Kubernetes

Kubernetes v1.38 alpha: Headlamp Kueue plugin surfaces admission traces for suspended Jobs

Headlamp's new Kueue plugin shows admission traces and workload state for suspended Jobs; runc's 1.6 RC pushes runtimes toward cgroup v2 readiness now.

Oct 21, 2026·3mkuberneteskueue
Kubernetes

runc 1.6.0-rc.1: cgroup v2 alignment and 1.4.x maintenance mode

runc 1.6.0-rc.1 signals a cgroup v2-focused path while the 1.4.x branch moves to security-only maintenance, forcing platform teams to plan upgrades now.

Oct 19, 2026·3mrunccgroup-v2