Stay up-to-date on Kubernetes development in 15 minutes a week.
Kubernetes v1.36.3 has been released, built with Go 1.26.5. This patch release includes fixes for DRA scheduling and allocator bugs, a kubelet memory leak regression introduced in 1.36, server-side apply regressions, kubeadm etcd learner promotion and join resiliency improvements, and reduced kubelet log noise for missing optional container annotations.
Kubernetes v1.37.0-beta.0 has been released, built with Go 1.26.5. Highlights include a new Recreate strategy for StatefulSets, ClusterTrustBundle moving to stable, metrics.k8s.io promoted to v1, PersistentVolumeClaimUnusedSinceTime enabled by default in beta, new scheduler and workload-aware preemption capabilities, default etcd 3.7.0, and numerous fixes across DRA, scheduling, CEL, kubelet, kube-proxy, and API machinery.
Nominations are now open for the 2026 Kubernetes Steering Committee election, with three seats available for two-year terms. Self-nominations and community nominations must be submitted via a GitHub issue by August 3, with candidate bios due August 4. Prospective candidates are also invited to a public Steering Committee Q&A session on August 5, where current committee members will discuss what serving on the Steering Committee is like and answer questions from candidates.
client-go enhancements in Kubernetes v1.37 introduce a new type-safe informer event handler API, reducing boilerplate and making deletion event handling safer and easier. The release also adds a client-go CHANGELOG.md for documenting breaking Go API changes, expands context handling and contextual logging support, and introduces tooling to help contributors track and document API compatibility changes.
Next Deadline: Feature Blogs Ready, August 3; Docs Freeze August 5
We are in Code Freeze. If you are working on a feature blog post for v1.37, remember that you need that ready for editing by Monday. If you are responsible for an Enhancement, please have your documentation finalized by Wednesday.
Cherry-pick deadline for the next patch releases is next week, August 7.
In this pull request, tallclair introduced the KubeletAllocatedPodsEndpoint feature gate and the corresponding /allocatedPods endpoint on the Kubelet. Linked to the Dynamic Containers proposal (KEP-6030), this endpoint allows the API server to query an on-demand /allocated subresource directly from the node without inflating storage overhead in etcd. By serving the Kubelet’s locally assigned pod specifications, this change provides a lightweight way to track when a running pod’s allocated spec diverges from its desired state, laying critical groundwork for in-place resizing and dynamic container features in v1.37.
In this pull request, rst0git introduced pod-level checkpoint and restore RPCs (CheckpointPod and RestorePod) to the v1.RuntimeService CRI interface. Driven by KEP-5823, this establishes a standardized contract between the Kubelet and container runtimes (such as CRI-O and containerd) to save and recover entire pod sandbox states without requiring Kubernetes to manage or interpret runtime-specific state files. This update lays the core API foundation for native stateful pod migration and fast-booting workloads across Kubernetes clusters.
In this pull request, tallclair promoted PLEGOnDemandRelist to General Availability, making the optimized kubelet relist behavior the permanent default in Kubernetes v1.37 after proving stable throughout v1.36. This graduation removes the feature gate and confirms the implementation is production-ready for all users. The change improves kubelet reliability and simplifies long-term maintenance for SIG Node while signaling confidence that no emergency rollback path is needed.
KEP-6164, authored by @jpbetz, @michaelasp, and @yedou37 in June 2026, eliminates Kubernetes’ long-standing internal
(__internal) API types in favor of stable versioned API types. By removing unnecessary conversions inside the kube-apiserver, the enhancement reduces conversion overhead, with benchmarks showing up to 5.8x faster conversions and significantly lower memory allocations for large Pod list operations. The implementation follows a phased approach: first making internal and versioned types memory-identical, then replacing internal types with Go type aliases before eventually removing them entirely. Targeting Stable in Kubernetes v1.37, the enhancement improves control plane performance and simplifies API maintenance without changing any user-facing APIs or wire formats.
allocationMode: All requests did not properly fail when a matching device was capacity-exhausted under DRAConsumableCapacity.watch_list_duration_seconds metric for better observability of watch-list operations.PodGroupPostFilter plugins which incorrectly referenced “PostFilter plugins” instead of “PodGroupPostFilter plugins”.storage_to_cache stage to the watch dispatch metric for finer-grained latency observability of the watch pipeline.allocatedPods Kubelet endpoint gated by the KubeletAllocatedPodsEndpoint feature gate is added; this surfaces allocated-pod information from the Kubelet and backs the /allocated Pod subresource proposed under KEP-5972 Dynamic Containers.cache_to_watcher stage to the watch dispatch metric, complementing the new storage_to_cache stage for end-to-end latency visibility.Unused condition evaluation for unbound PVCs, since the condition only applies to bound PVCs under the PersistentVolumeClaimUnusedSinceTime feature.ResourceClaim events, ensuring pods are re-queued when a ResourceClaim allocation is removed.error outcome to the cloud-provider route_sync_total metric, which previously only counted successful syncs.numgen map for single-endpoint service DNAT, reducing per-rule scan cost in clusters with many Services.AllowUnsafeMalformedObjectDeletion to Beta under KEP-3926.PLEGOnDemandRelist to GA.InPlacePodVerticalScalingInitContainers to GA.Last Week In Kubernetes Development (LWKD) is a product of multiple contributors participating in Kubernetes SIG Contributor Experience. All original content is licensed Creative Commons Share-Alike, although linked content and images may be differently licensed. LWKD does collect some information on readers, see our privacy notice for details.
You may contribute to LWKD by submitting pull requests or issues on the LWKD github repo.