Skip to content

[FG:InPlacePodVerticalScaling] Static CPU management policy alongside InPlacePodVerticalScaling #127262

@esotsal

Description

@esotsal

What happened?

Container CPUset allocations not updated for Guaranteed QoS Pod ( Integer CPU limits = CPU requests, after Inplace Pod updates with Static CPU Management policy alongside InPlacePodVerticalScaling.

Static CPU management policy is not supported with this feature, known issue ( ref: https://kubernetes.io/blog/2023/05/12/in-place-pod-resize-alpha/#known-issues )

What did you expect to happen?

Container CPU set container allocation to be updated if accepted

How can we reproduce it (as minimally and precisely as possible)?

From kubernetes/enhancements#2838

Tested the changes being done as a part of KEP --> In Place update of Pod resources (kubernetes/enhancements#1287)

Added the below kubernetes flag before building k8s locally to the hack/local_cluster_up.sh script file. (Note i had created a vm machine with 8 cpus...)

kuberneted flags :-
"--topology-manager-policy=best-effort"
"--cpu-manager-policy=static"
"--reserved-cpus=0,1"

I then created a pod with limit and cpu both assigned as 2.. the pod got successfully created. I then logged in the pod and then checked its cpu set...there it was showing cpu core 3-4 assigned to the pod.. which is fine/correct.

Now i updated the pod limit and cpu to 3 each.. the pod got successfully updated as well...However cpuset assigned to the container was not updated in this case when i logged into the pod and verified..It was same as previous...Not sure if you have checked this thing at your end ??

Thanks & Regards,
ANkit Nigam

Anything else we need to know?

As decided in SIG Node meeting, this issue replaces kubernetes/enhancements#2838

Kubernetes version

Kubernetes versions with InPlacePodVerticalScaling > 1.27

Cloud provider

Independent of Cloud provider

OS version

Independent of OS

Install tools

Independent of install tools

Metadata

Metadata

Assignees

Labels

kind/bugCategorizes issue or PR as related to a bug.sig/nodeCategorizes an issue or PR as relevant to SIG Node.triage/acceptedIndicates an issue or PR is ready to be actively worked on.

Type

No type

Projects

Status

Done

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions