Skip to content

KEP-2625: Update CPU Manager Policy Options 1.23 Beta#2933

Merged
k8s-ci-robot merged 2 commits intokubernetes:masterfrom
swatisehgal:cpumanager-policy-options-to-beta
Sep 8, 2021
Merged

KEP-2625: Update CPU Manager Policy Options 1.23 Beta#2933
k8s-ci-robot merged 2 commits intokubernetes:masterfrom
swatisehgal:cpumanager-policy-options-to-beta

Conversation

@swatisehgal
Copy link
Copy Markdown
Contributor

@swatisehgal swatisehgal commented Sep 2, 2021

One-line PR description: Update CPU Manager Policy Options 1.23 Beta
Issue link: #2625

Other comments:

  • This PR updates the KEP to capture the policy name full-pcpus-only
    based on the implementation merged in 1.22.
  • Explains the use of this feature for introduction another policy option
  • Changes pertaining to promotion to Beta

Signed-off-by: Swati Sehgal swsehgal@redhat.com

@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Sep 2, 2021
@swatisehgal
Copy link
Copy Markdown
Contributor Author

/sig node

@k8s-ci-robot k8s-ci-robot added the sig/node Categorizes an issue or PR as relevant to SIG Node. label Sep 2, 2021
@k8s-ci-robot k8s-ci-robot added the kind/kep Categorizes KEP tracking issues and PRs modifying the KEP directory label Sep 2, 2021
@swatisehgal
Copy link
Copy Markdown
Contributor Author

/cc @klueska
Could you please take a look?

@k8s-ci-robot k8s-ci-robot requested a review from klueska September 2, 2021 17:42
@swatisehgal swatisehgal force-pushed the cpumanager-policy-options-to-beta branch 2 times, most recently from dad2733 to 0010bc6 Compare September 2, 2021 17:57
@klueska
Copy link
Copy Markdown
Contributor

klueska commented Sep 2, 2021

I thought last time I talked to @fromanirh that he wanted to wait until 1.24 to promote this to beta.

@gracenng
Copy link
Copy Markdown
Member

gracenng commented Sep 2, 2021

Hi @swatisehgal 👋 1.23 enhancement shadow here. The status of this enhancement is currently at risk because your PRR is not approved, KEP not checked as implementable and will remain so until this PR is merged. Friendly reminder that enhancement freeze is September 9th.

Let me know if there's anything I could help with. Thanks!

@swatisehgal
Copy link
Copy Markdown
Contributor Author

I thought last time I talked to @fromanirh that he wanted to wait until 1.24 to promote this to beta.

@fromanirh is currently out of office and I have been told to go ahead with the promotion of this feature to Beta in this release. My understanding is that you had proposed promoting this feature to Beta in 1.23 planning doc. Are you still okay to go ahead with the promotion?

@klueska
Copy link
Copy Markdown
Contributor

klueska commented Sep 3, 2021

I am OK with it, in principle.

My only question would be around the requirement for feature gates around any new CPUManager policy options we introduce in a future release. Right now any new policy options we introduce as alpha are protected by the CPUManagerPolicyOptions feature gate (which is also in alpha). If CPUManagerPolicyOptions goes to beta and we want to introduce a new policy option as alpha in the future, do we need a new feature gate for that?

To me it feels like overkill to introduce a new feature gate for every new policy option we create (especially since the option itself gates its usage), but @fromanirh seemed to suggest that this might be necessary.

If we don't need to create a new fature gate for each future policy option, then promoting this to beta now seems fine. Otherwise, I'd like to wait until 1.24 because I have at least 2 more options I plan to introduce in 1.24 and I don't want to have to introduce 2 new feature gates to protect them.

Maybe @ehashman can clear this up.

Comment thread keps/sig-node/2625-cpumanager-policies-thread-placement/README.md Outdated
@swatisehgal
Copy link
Copy Markdown
Contributor Author

I am OK with it, in principle.

My only question would be around the requirement for feature gates around any new ´CPUManagerpolicy options we introduce in a future release. Right now any new policy options we introduce asalphaare protected by theCPUManagerPolicyOptionsfeature gate (which is also in alpha). IfCPUManagerPolicyOptionsgoes tobetaand we want to introduce a new policy option asalpha` in the future, do we need a new feature gate for that?

To me it feels like overkill to introduce a new feature gate for every new policy option we create (especially since the option itself gates its usage), but @fromanirh seemed to suggest that this might be necessary.

We had a somewhat similar situation in case of podresource API which itself was a stable API but when we introduced an additional endpoint it had to be feature gated.

If we don't need to create a new fature gate for each future policy option, then promoting this to beta now seems fine. Otherwise, I'd like to wait until 1.24 because I have at least 2 more options I plan to introduce in 1.24 and I don't want to have to introduce 2 new feature gates to protect them.

Ack, lets see what @ehashman thinks about this and proceed accordingly.

@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Sep 3, 2021
@ehashman
Copy link
Copy Markdown
Member

ehashman commented Sep 3, 2021

I don't think every time we add a new policy option, we need a new feature flag, that seems like overkill... however, @johnbelamaric can confirm as your PRR reviewer.

@swatisehgal
Copy link
Copy Markdown
Contributor Author

/assign @derekwaynecarr @dchen1107 @SergeyKanzhelev @odinuge @klueska
for node review

/assign @johnbelamaric
for PRR review

@swatisehgal swatisehgal force-pushed the cpumanager-policy-options-to-beta branch from 8c3798f to 89f1da8 Compare September 6, 2021 19:21
@k8s-ci-robot k8s-ci-robot removed the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Sep 6, 2021
@odinuge
Copy link
Copy Markdown
Member

odinuge commented Sep 8, 2021

Thanks for working on this! This looks good to me!
/lgtm

@johnbelamaric
Copy link
Copy Markdown
Member

/approve

@k8s-ci-robot
Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: derekwaynecarr, johnbelamaric, swatisehgal

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details 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 the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Sep 8, 2021
@k8s-ci-robot k8s-ci-robot merged commit e673586 into kubernetes:master Sep 8, 2021
@k8s-ci-robot k8s-ci-robot added this to the v1.23 milestone Sep 8, 2021
ffromani added a commit to ffromani/kubernetes that referenced this pull request Sep 29, 2021
We graduate the `CPUManagerPolicyOptions` feature to beta
in the 1.23 cycle, and we add new experimental feature gates
to guard new options which are planned in the 1.23 and in the
following cycles.

We introduce additional feature gate called `CPUManagerPolicyAlphaOptions` and
`CPUManagerPolicyBetaOptions`. The basic idea is to avoid the
cumbersome process of adding a feature gate for each option, and to have
feature gates which track the maturity level of _groups_ of options.
Besides this change, the graduation process, and the process in general,
for adding new policy options is still unchanged.

The `full-pcpus-only` option added in the 1.22 cycle is intentionally
moved into the beta policy options

For more details:
- KEP: kubernetes/enhancements#2933
- sig-arch discussion:
  https://groups.google.com/u/1/g/kubernetes-sig-architecture/c/Nxsc7pfe5rw

Signed-off-by: Francesco Romani <fromani@redhat.com>
ffromani added a commit to ffromani/website that referenced this pull request Oct 1, 2021
Document the graduation process and the maturity level
of the cpumanager policy options, and the new feature gate
involved. No changes regarding the existing options.

For more details: kubernetes/enhancements#2933
Signed-off-by: Francesco Romani <fromani@redhat.com>
tallclair pushed a commit to tallclair/kubernetes that referenced this pull request Oct 26, 2021
We graduate the `CPUManagerPolicyOptions` feature to beta
in the 1.23 cycle, and we add new experimental feature gates
to guard new options which are planned in the 1.23 and in the
following cycles.

We introduce additional feature gate called `CPUManagerPolicyAlphaOptions` and
`CPUManagerPolicyBetaOptions`. The basic idea is to avoid the
cumbersome process of adding a feature gate for each option, and to have
feature gates which track the maturity level of _groups_ of options.
Besides this change, the graduation process, and the process in general,
for adding new policy options is still unchanged.

The `full-pcpus-only` option added in the 1.22 cycle is intentionally
moved into the beta policy options

For more details:
- KEP: kubernetes/enhancements#2933
- sig-arch discussion:
  https://groups.google.com/u/1/g/kubernetes-sig-architecture/c/Nxsc7pfe5rw

Signed-off-by: Francesco Romani <fromani@redhat.com>
ffromani added a commit to ffromani/website that referenced this pull request Nov 15, 2021
Document the graduation process and the maturity level
of the cpumanager policy options, and the new feature gate
involved. No changes regarding the existing options.

For more details: kubernetes/enhancements#2933
Signed-off-by: Francesco Romani <fromani@redhat.com>
ffromani added a commit to ffromani/website that referenced this pull request Nov 21, 2021
Document the graduation process and the maturity level
of the cpumanager policy options, and the new feature gate
involved. No changes regarding the existing options.

For more details: kubernetes/enhancements#2933
Signed-off-by: Francesco Romani <fromani@redhat.com>
ffromani added a commit to ffromani/website that referenced this pull request Nov 22, 2021
Document the graduation process and the maturity level
of the cpumanager policy options, and the new feature gate
involved. No changes regarding the existing options.

For more details: kubernetes/enhancements#2933
Signed-off-by: Francesco Romani <fromani@redhat.com>
ffromani added a commit to ffromani/website that referenced this pull request Nov 23, 2021
Document the graduation process and the maturity level
of the cpumanager policy options, and the new feature gate
involved. No changes regarding the existing options.

For more details: kubernetes/enhancements#2933
Signed-off-by: Francesco Romani <fromani@redhat.com>
mattcary pushed a commit to mattcary/website that referenced this pull request Nov 29, 2021
Document the graduation process and the maturity level
of the cpumanager policy options, and the new feature gate
involved. No changes regarding the existing options.

For more details: kubernetes/enhancements#2933
Signed-off-by: Francesco Romani <fromani@redhat.com>
@swatisehgal swatisehgal deleted the cpumanager-policy-options-to-beta branch October 12, 2022 10:13
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. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/kep Categorizes KEP tracking issues and PRs modifying the KEP directory lgtm "Looks good to me", indicates that a PR is ready to be merged. sig/node Categorizes an issue or PR as relevant to SIG Node. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.