-
Notifications
You must be signed in to change notification settings - Fork 41.6k
Closed
Labels
kind/featureCategorizes issue or PR as related to a new feature.Categorizes issue or PR as related to a new feature.sig/nodeCategorizes an issue or PR as relevant to SIG Node.Categorizes an issue or PR as relevant to SIG Node.triage/acceptedIndicates an issue or PR is ready to be actively worked on.Indicates an issue or PR is ready to be actively worked on.
Description
What would you like to be added?
This enhancement tracks various TODO items from alpha to GA for the In-Place Pod Vertical Scaling feature.
To find pending TODO items in the k/k repo, do:
git grep TODO | grep InPlacePodVerticalScalingTODOs not tracked in code:
- Add and expose a helper function to get a pod's resource requirements and allocations for use by metrics, kubectl describe, etc
Why is this needed?
These were TODO items found during review of PR #102884 and it was agreed they should not block alpha. Most need to be handled before Beta, and a few need to be addressed at GA/GA+1.
### Tasks
- [ ] pkg/apis/core/validation/validation.go:5071 - Drop this var once InPlacePodVerticalScaling goes GA and featuregate is gone.
- [ ] pkg/kubelet/container/helpers.go:128 - Remove this in GA+1 and make HashContainerWithoutResources to become Hash.
- [ ] pkg/kubelet/container/runtime.go:301 - Remove this in GA+1 and make HashWithoutResources to become Hash.
- [ ] pkg/kubelet/kubelet.go:1962 - Investigate doing this in HandlePodUpdates + periodic SyncLoop scan
- [ ] pkg/kubelet/kubelet.go:2588 - Can we recover from checkpoint failure in some way? Investigate
- [ ] pkg/kubelet/kubelet.go:2847 - Can we recover from checkpoint update failure in some way? Investigate
- [ ] pkg/kubelet/kubelet.go:2855 - Can we recover from resize status checkpoint failure in some way? Investigate
- [ ] pkg/kubelet/kubelet_pods.go:2107 - Update this to include extended resources in addition to CPU, memory, ephemeral storage. Add test case for extended resources.
- [ ] pkg/kubelet/kuberuntime/helpers_linux.go:63 - Address issue that sets min req/limit to 2m/10m before beta ( See: https://github.com/kubernetes/kubernetes/pull/102884#discussion_r662552642 )
- [ ] pkg/kubelet/kuberuntime/kuberuntime_container_linux_test.go:867 - Add unit tests for cgroup v1 & v2
- [ ] pkg/kubelet/kuberuntime/kuberuntime_manager.go:662 - Figure out best way to get enforceMemoryQoS value (parameter kubelet should know which containers it is managing #4 below) in platform-agnostic way
- [ ] pkg/scheduler/internal/queue/scheduling_queue.go:1074 - Fix this to determine when a pod is truly resized down (might need oldPod if we cannot determine from Status alone)
- [ ] test/e2e/node/pod_resize.go:85 - Can we optimize this?
- [ ] test/e2e/node/pod_resize.go:334 - Is there a better way to determine this?
- [ ] test/e2e/node/pod_resize.go:500 - Remove this check once base-OS updates to containerd>=1.6.9
- [ ] pkg/kubelet/cm/cgroup_manager_linux.go:645 - Support memory request in getCgroupMemoryConfig
- [ ] pkg/kubelet/cm/cgroup_manager_linux.go:731 - Support memory request in setCgroupMemoryConfig
esotsal
Metadata
Metadata
Assignees
Labels
kind/featureCategorizes issue or PR as related to a new feature.Categorizes issue or PR as related to a new feature.sig/nodeCategorizes an issue or PR as relevant to SIG Node.Categorizes an issue or PR as relevant to SIG Node.triage/acceptedIndicates an issue or PR is ready to be actively worked on.Indicates an issue or PR is ready to be actively worked on.
Type
Projects
Status
Done