Back to Devoured - September 18, 2026
DEVOURED
Kubernetes v1.37: Pod-Level Resource Managers graduated to Beta

Kubernetes v1.37: Pod-Level Resource Managers graduated to Beta

DevOps Kubernetes
Kubernetes v1.37 introduces Beta support for pod-level resource managers, allowing for more granular hardware allocation and NUMA alignment.
What: The new feature allows the Kubelet's Topology, CPU, and Memory managers to use Pod-level resource declarations, solving the previous issue where developers had to choose between dedicated resources for sidecars or sacrificing NUMA performance.
Why it matters: This move enables hybrid resource allocation, allowing sidecars to exist in isolated pools while ensuring primary application containers receive dedicated, high-performance resources.
Deep dive
  • Pod-level resource managers: Adds support for setting resource requirements at the Pod level rather than just the container level.
  • NUMA alignment: Enables better cache and latency performance by mapping hardware resources to the same physical CPU socket.
  • Operational Efficiency: Prevents wasted physical CPU cores by moving non-critical sidecars to a shared pool.
  • API Enhancements: v1 PodResources gRPC service now includes top-level CPU and memory fields for clearer resource monitoring.
Decoder
  • NUMA (Non-Uniform Memory Access): A computer memory design where memory access time depends on the memory location relative to the processor. Alignment ensures faster access by keeping memory local to the CPU core.
  • Sidecar: A secondary container that runs alongside the main application container within the same Pod to perform auxiliary tasks like logging or telemetry.
  • Kubelet: The primary node agent that runs on each node in a Kubernetes cluster to ensure containers are running as expected.
Original article

Kubernetes v1.37: Pod-Level Resource Managers graduated to Beta

With the release of Kubernetes v1.37, the Pod-Level Resource Managers feature has graduated to Beta status (disabled by default)!

First introduced as an Alpha feature in Kubernetes v1.36, this enhancement builds on Pod-Level Resources by equipping Kubelet's Topology Manager, CPU Manager, and Memory Manager to use Pod-level resource declarations (.spec.resources) directly when making hardware placement decisions.

Bringing pod-level resources to node managers

Before this feature, obtaining exclusive NUMA-aligned CPU cores or memory for latency-critical applications forced cluster operators into an all-or-nothing choice: assign integer resource requests to every container in the Pod, or forfeit exclusive NUMA alignment entirely. For modern workloads running lightweight sidecars (such as logging agents or telemetry exporters), allocating dedicated physical cores to auxiliary containers was wasteful.

Pod-Level Resource Managers solves this challenge by enabling hybrid allocation models. The Kubelet can reserve exclusive NUMA-aligned resources for primary application containers while placing non-Guaranteed sidecars into a pod-isolated shared pool. This ensures primary workloads get unthrottled, NUMA-local performance while sidecars benefit from running in a pod-isolated shared pool, enjoying local NUMA alignment and protection from external node interference without consuming dedicated physical cores.

What's new in Beta

Graduating to Beta brings key operational and API enhancements:

  • Graduation to Beta: Controlled by the PodLevelResourceManagers feature gate, available to opt in (disabled by default) in Kubernetes v1.37.
  • PodResources API Reporting: The v1 PodResources gRPC service (PodResourcesLister) introduces top-level cpu_ids and memory fields on PodResources responses. Monitoring tools and device plugins can query pod-level exclusive assignments directly without double-counting container allocations.

Getting started and providing feedback

For a deep dive into the technical details and configuration of this feature, check out the official documentation:

  • Pod-level resource managers
  • Pod-level resource managers reference

To follow a step-by-step tutorial on configuring and deploying workloads:

  • Use pod-level resources with Kubelet resource managers

To learn more about how to assign resources to pods:

  • Assign Pod-level CPU and memory resources

As this feature moves through Beta toward GA, your feedback is invaluable. Please report any issues or share your experiences via the standard Kubernetes communication channels:

  • Slack: #sig-node
  • Mailing list
  • Open Community Issues/PRs
Explore all 58 articles in today's digest

Fresh dev news, AI-digested daily. Never miss a trend at devoured.fyi