Skip to content
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

Return only isolated cpus in podresources interface #97415

Conversation

AlexeyPerevalov
Copy link
Contributor

@AlexeyPerevalov AlexeyPerevalov commented Dec 21, 2020

/kind bug

This change clarifies how which cpu ids are returned by podresourcess interface.
This clarification and change is necessary to avoid requesting pod spec in external daemon to check QoS of the pod, since before this change we were able to distinguish cpus from shared pools and exclusively isolated pool only by QoS Guaranteed.

Podresources interface was changed, now it returns only isolated cpus

@k8s-ci-robot k8s-ci-robot added kind/feature Categorizes issue or PR as related to a new feature. do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. do-not-merge/needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. needs-priority Indicates a PR lacks a `priority/foo` label and requires one. area/kubelet sig/node Categorizes an issue or PR as relevant to SIG Node. and removed do-not-merge/needs-sig Indicates an issue or PR lacks a `sig/foo` label and requires one. labels Dec 21, 2020
@ehashman ehashman added this to Needs Reviewer in SIG Node PR Triage Jan 6, 2021
@ehashman ehashman moved this from Needs Reviewer to Triage in SIG Node PR Triage Jan 6, 2021
@kikisdeliveryservice
Copy link
Member

@kikisdeliveryservice
Copy link
Member

kikisdeliveryservice commented Jan 8, 2021

Is there a reason this commit isn't included in: #95734 which touches the same file for the same enhancement?

@AlexeyPerevalov
Copy link
Contributor Author

AlexeyPerevalov commented Jan 12, 2021

Is there a reason this commit isn't included in: #95734 which touches the same file for the same enhancement?

I submitted a new KEP modification kubernetes/enhancements#2201, special for this change, since PR #95734 is already a big enough. Initially we decided to split implementation of the KEP 2043 into several PR to simplify merge each PR.

@kikisdeliveryservice
Copy link
Member

/triage accepted

@k8s-ci-robot k8s-ci-robot added triage/accepted Indicates an issue or PR is ready to be actively worked on. and removed needs-triage Indicates an issue or PR lacks a `triage/foo` label and requires one. labels Jan 22, 2021
@kikisdeliveryservice kikisdeliveryservice moved this from Triage to Needs Reviewer in SIG Node PR Triage Jan 22, 2021
@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 28, 2021
@ehashman ehashman moved this from Needs Reviewer to Waiting on Author in SIG Node PR Triage Feb 9, 2021
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Feb 12, 2021
@AlexeyPerevalov
Copy link
Contributor Author

/test pull-kubernetes-bazel-test

@AlexeyPerevalov
Copy link
Contributor Author

/test pull-kubernetes-e2e-kind

@fejta-bot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

Send feedback to sig-contributor-experience at kubernetes/community.
/lifecycle stale

@k8s-ci-robot k8s-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label May 13, 2021
@klueska
Copy link
Contributor

klueska commented Oct 7, 2021

/lgtm
/approve

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Oct 7, 2021
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: AlexeyPerevalov, klueska

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 /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added approved Indicates a PR has been approved by an approver from all required OWNERS files. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. labels Oct 7, 2021
AlexeyPerevalov and others added 3 commits October 7, 2021 15:34
Co-Authored-by: Swati Sehgal <swsehgal@redhat.com>
Signed-off-by: Alexey Perevalov <alexey.perevalov@huawei.com>
This patch changes cpuCount to cpuRequest in order to cater to cases
where guaranteed pods make non-integral CPU Requests.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
@swatisehgal swatisehgal force-pushed the ExcludeSharedPoolFromPodResources branch from f228b57 to 5043b43 Compare October 7, 2021 14:45
@k8s-ci-robot k8s-ci-robot removed lgtm "Looks good to me", indicates that a PR is ready to be merged. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. labels Oct 7, 2021
@ffromani
Copy link
Contributor

ffromani commented Oct 7, 2021

/test pull-kubernetes-integration

k8s.io/kubernetes/test/integration/client: TestCertRotationContinuousRequests expand_less

unrelated

@k8s-ci-robot
Copy link
Contributor

k8s-ci-robot commented Oct 7, 2021

@AlexeyPerevalov: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
pull-kubernetes-node-kubelet-serial-containerd 2ce5fbf link false /test pull-kubernetes-node-kubelet-serial-containerd
pull-kubernetes-node-kubelet-serial 2ce5fbf link false /test pull-kubernetes-node-kubelet-serial

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.

@swatisehgal
Copy link
Contributor

/test pull-kubernetes-integration

@swatisehgal
Copy link
Contributor

@fromanirh @klueska The lgtm and approve label was removed as the PR had to be rebased. Could you please take a quick look?

@ffromani
Copy link
Contributor

ffromani commented Oct 8, 2021

@fromanirh @klueska The lgtm and approve label was removed as the PR had to be rebased. Could you please take a quick look?

looks like approved is kept, but lgtm is indeed gone. I'll have another pass ASAP.

Copy link
Contributor

@ffromani ffromani left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm
LGTM lost because a trivial rebase, restoring

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Oct 8, 2021
@k8s-ci-robot k8s-ci-robot merged commit 2face13 into kubernetes:master Oct 8, 2021
SIG Node PR Triage automation moved this from Needs Reviewer to Done Oct 8, 2021
@k8s-ci-robot k8s-ci-robot added this to the v1.23 milestone Oct 8, 2021
swatisehgal added a commit to swatisehgal/website that referenced this pull request Oct 21, 2021
Based on the discussion here: kubernetes/kubernetes#97415 (comment)
we explictly state that the GetCpuIds returned for a ContainerResource in the ListPodResourcesResponse
represent only exclusively allocated CPUs.

In order to evaluate the CPUs corresponding to the shared pool, List endpoint should be used in conjunction
with GetAllocatableResources endpoint. We highlight the steps that the client needs to take evaluate this.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
swatisehgal added a commit to swatisehgal/website that referenced this pull request Nov 15, 2021
Based on the discussion here: kubernetes/kubernetes#97415 (comment)
we explictly state that the GetCpuIds returned for a ContainerResource in the ListPodResourcesResponse
represent only exclusively allocated CPUs.

In order to evaluate the CPUs corresponding to the shared pool, List endpoint should be used in conjunction
with GetAllocatableResources endpoint. We highlight the steps that the client needs to take evaluate this.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
swatisehgal added a commit to swatisehgal/website that referenced this pull request Nov 17, 2021
Based on the discussion here: kubernetes/kubernetes#97415 (comment)
we explictly state that the GetCpuIds returned for a ContainerResource in the ListPodResourcesResponse
represent only exclusively allocated CPUs.

In order to evaluate the CPUs corresponding to the shared pool, List endpoint should be used in conjunction
with GetAllocatableResources endpoint. We highlight the steps that the client needs to take evaluate this.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
swatisehgal added a commit to swatisehgal/website that referenced this pull request Nov 17, 2021
Based on the discussion here: kubernetes/kubernetes#97415 (comment)
we explictly state that the GetCpuIds returned for a ContainerResource in the ListPodResourcesResponse
represent only exclusively allocated CPUs.

In order to evaluate the CPUs corresponding to the shared pool, List endpoint should be used in conjunction
with GetAllocatableResources endpoint. We highlight the steps that the client needs to take evaluate this.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. area/kubelet area/test cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/bug Categorizes issue or PR as related to a bug. lgtm "Looks good to me", indicates that a PR is ready to be merged. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. release-note Denotes a PR that will be considered when it comes time to generate release notes. sig/node Categorizes an issue or PR as relevant to SIG Node. sig/testing Categorizes an issue or PR as relevant to SIG Testing. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. triage/accepted Indicates an issue or PR is ready to be actively worked on.
Projects
SIG Node CI/Test Board
PRs - Needs Approver
Archived in project
Development

Successfully merging this pull request may close these issues.

None yet