-
Notifications
You must be signed in to change notification settings - Fork 40.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
node: topologymgr: Graduate Kubelet Topology Manager to GA #116093
node: topologymgr: Graduate Kubelet Topology Manager to GA #116093
Conversation
ed98724
to
2be932c
Compare
/triage accepted |
/cc @ffromani |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
minor comments inside.
LGTM once the dependencies are merged.
ok, according to kubernetes/enhancements#693 this seems the last PR needed (and this seems correct to me). So let's discuss the inline comments and should be fine. |
2be932c
to
8946faa
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I apologize for the late notice, but it seems we missed a trivial rename. Besides that, everything else LGTM
If you agree with the rename, you can either push a separate commit with the rename or amend the existing last one
With Topology Manager enabled by default, we no longer need `resourceAllocator` as Topology Manager serves as the main PodAdmitHandler completely responsible for admission check based on hints received from the hintProviders and the subsequent allocation of the corresponding resources to a pod as can be seen here: https://github.com/kubernetes/kubernetes/blob/v1.26.0/pkg/kubelet/cm/topologymanager/scope.go#L150 With regard to DRA, the passing of `cm.draManager` into resourceAllocator seems redundant as no admission checks (and allocation of resources handled by DRA) is taking place in `Admit` method of resourceAllocator. DRA has a completely different model to the rest of the resource managers where pod is only scheduled on a node once resources are reserved for it. Because of this, admission checks or waiting for resources to be provisioned after the pod has been scheduled on the node is not required. Before making the above change, it was verified that DRA Manager is instantiated in `NewContainerManager`: https://github.com/kubernetes/kubernetes/blob/v1.26.0/pkg/kubelet/cm/container_manager_linux.go#L318 Signed-off-by: Swati Sehgal <[email protected]>
1e8c8fd
to
937d330
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
LGTM label has been added. Git tree hash: 323de0a288bbeaa0912d42e766b58fe229521037
|
Signed-off-by: Swati Sehgal <[email protected]>
Signed-off-by: Swati Sehgal <[email protected]>
Changes committed after running: `./hack/update-codegen.sh` Signed-off-by: Swati Sehgal <[email protected]>
/approve One question about dropping some errors cases out of the NewManager function when no topology policy is configured, will let kubelet reviewers weigh in on that and add final lgtm |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
Created an issue to follow up and minimize the number of calls needed on initialization when policy is none. Should not block GA
LGTM label has been added. Git tree hash: b731551beb60787d54646cc9938918153b443cb3
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: klueska, liggitt, SergeyKanzhelev, swatisehgal The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/retest |
@swatisehgal: The following test failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
/retest-required |
What type of PR is this?
/kind feature
What this PR does / why we need it:
Captures changes to graduate Kubelet Topology Manager to GA.
Which issue(s) this PR fixes:
Issue: #693
Special notes for your reviewer:
Does this PR introduce a user-facing change?
Additional documentation e.g., KEPs (Kubernetes Enhancement Proposals), usage docs, etc.: