Kubernetes v1.36: In-Place Vertical Scaling for Pod-Level Resources Graduates to Beta
Kubernetes v1.36 introduces In-Place Pod-Level Resources Vertical Scaling, now in Beta and enabled by default. This feature allows users to dynamically adjust the aggregate resource limits of a running Pod. This is particularly useful for Pods with shared resources and no container-specific limits. The Kubelet determines the update method based on each container's resizePolicy, deciding between in-place updates or restarts. When a resize happens, the Kubelet first checks if the node has enough resources. It then sequences cgroup updates to prevent resource overshoot, expanding the pod-level cgroup before individual container cgroups are enlarged. Pod conditions, like PodResizeInProgress, track the resize's progress and status. The feature requires cgroup v2, CRI support, specific feature gates, and Linux-based nodes. The next step is integrating this with the Vertical Pod Autoscaler (VPA). Users are encouraged to test this feature and provide feedback through the community channels.
resizePolicy, deciding between in-place updates or restarts. When a resize happens, the Kubelet first checks if the node has enough resources. It then sequences cgroup updates to prevent resource overshoot, expanding the pod-level cgroup before individual container cgroups are enlarged. Pod conditions, likePodResizeInProgress, track the resize's progress and status. The feature requires cgroup v2, CRI support, specific feature gates, and Linux-based nodes. The next step is integrating this with the Vertical Pod Autoscaler (VPA). Users are encouraged to test this feature and provide feedback through the community channels.