DEV Community

Freelance Inspector
Freelance Inspector

Posted on

Kubernetes 1.37: 18 kubelet flags that will stop your nodes from booting

Most deprecations print a warning. This one doesn't.

Kubernetes 1.37 removes 18 cAdvisor flags from kubelet. If any of them is still set, kubelet refuses to start, and the node doesn't come back.

A few from the list:

--containerd
--enable-load-reader
--global-housekeeping-interval
--storage-driver-host
--storage-driver-buffer-duration
Enter fullscreen mode Exit fullscreen mode

Watch out: --housekeeping-interval survives, but --global-housekeeping-interval is gone.

"Remove them from your kubelet config" isn't one file

On a real fleet those flags hide in at least four places:

  1. The kubelet systemd ExecStart and the KubeletConfiguration YAML it loads
  2. kubeadm's nodeRegistration.kubeletExtraArgs, which gets copied to every node that joins
  3. Systemd drop-ins in /etc/systemd/system/kubelet.service.d/
  4. Managed node group bootstrap: EKS launch templates, GKE node pool metadata, AKS custom node config

That last one isn't in the upstream docs at all, and it's the most likely place a three-year-old flag is still sitting.

Also in 1.37: three /metrics/cadvisor series disappear without any error, and kubeadm drops v1beta3.

The full article has all 18 flags, a 6-step pre-upgrade audit, and the other 1.37 removals that can fail your upgrade. Link is in the first comment. 👇

Top comments (1)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.