mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-14 14:23:37 +00:00
kubelet: Fix order of resizing pod cgroups in doPodResizeAction()
This commit is contained in:
parent
f44f7b7422
commit
1ec1ef3d06
@ -696,6 +696,7 @@ func (m *kubeGenericRuntimeManager) doPodResizeAction(pod *v1.Pod, podStatus *ku
|
|||||||
// If an error occurs at any point, abort. Let future syncpod iterations retry the unfinished stuff.
|
// If an error occurs at any point, abort. Let future syncpod iterations retry the unfinished stuff.
|
||||||
resizeContainers := func(rName v1.ResourceName, currPodCgLimValue, newPodCgLimValue, currPodCgReqValue, newPodCgReqValue int64) error {
|
resizeContainers := func(rName v1.ResourceName, currPodCgLimValue, newPodCgLimValue, currPodCgReqValue, newPodCgReqValue int64) error {
|
||||||
var err error
|
var err error
|
||||||
|
// At upsizing, limits should expand prior to requests in order to keep "requests <= limits".
|
||||||
if newPodCgLimValue > currPodCgLimValue {
|
if newPodCgLimValue > currPodCgLimValue {
|
||||||
if err = setPodCgroupConfig(rName, true); err != nil {
|
if err = setPodCgroupConfig(rName, true); err != nil {
|
||||||
return err
|
return err
|
||||||
@ -712,14 +713,17 @@ func (m *kubeGenericRuntimeManager) doPodResizeAction(pod *v1.Pod, podStatus *ku
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if newPodCgLimValue < currPodCgLimValue {
|
// At downsizing, requests should shrink prior to limits in order to keep "requests <= limits".
|
||||||
err = setPodCgroupConfig(rName, true)
|
|
||||||
}
|
|
||||||
if newPodCgReqValue < currPodCgReqValue {
|
if newPodCgReqValue < currPodCgReqValue {
|
||||||
if err = setPodCgroupConfig(rName, false); err != nil {
|
if err = setPodCgroupConfig(rName, false); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if newPodCgLimValue < currPodCgLimValue {
|
||||||
|
if err = setPodCgroupConfig(rName, true); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
if len(podContainerChanges.ContainersToUpdate[v1.ResourceMemory]) > 0 || podContainerChanges.UpdatePodResources {
|
if len(podContainerChanges.ContainersToUpdate[v1.ResourceMemory]) > 0 || podContainerChanges.UpdatePodResources {
|
||||||
|
Loading…
Reference in New Issue
Block a user