enhancements icon indicating copy to clipboard operation
enhancements copied to clipboard

Support PSI based on cgroupv2

Open ndixita opened this issue 2 years ago β€’ 89 comments

Enhancement Description

  • One-line enhancement description (can be used as a release note): Integrating PSI metrics in K8s and using those to set node conditions.

  • Kubernetes Enhancement Proposal: https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/4205-psi-metric/README.md

  • Discussion Link:

  • Primary contact (assignee): @ndixita

  • Responsible SIGs: sig-node

  • Enhancement target (which target equals to which milestone):

    • Alpha release target (x.y): 1.33
    • Beta release target (x.y):
    • Stable release target (x.y):
  • [ ] Alpha

    • [x] KEP (k/enhancements) update PR(s):
      • [x] 1.29: https://github.com/kubernetes/enhancements/pull/4230
      • [x] 1.30: https://github.com/kubernetes/enhancements/pull/4360
      • [x] 1.30: https://github.com/kubernetes/enhancements/pull/4454
      • [x] 1.32: https://github.com/kubernetes/enhancements/pull/4883
      • [x] 1.33: https://github.com/kubernetes/enhancements/pull/5111 https://github.com/kubernetes/enhancements/pull/5155
    • [ ] Code (k/k) update PR(s):
      • [x] 1.32 https://github.com/kubernetes/kubernetes/pull/128276
      • [x] Runc 1.2.0 https://github.com/opencontainers/runc/pull/3900
      • [x] Containerd 2.0 only(not included in v1.7 containerd) https://github.com/containerd/cgroups/pull/308
      • [x] Cadvisor: https://github.com/google/cadvisor/pull/3649
      • [x] https://github.com/kubernetes/kubernetes/pull/130701
    • [ ] Docs (k/website) update PR(s): https://github.com/kubernetes/website/pull/48468
      • [ ] https://github.com/kubernetes/website/pull/49895
  • [ ] Beta

    • [ ] KEP (k/enhancements) update PR(s):
      • [ ] https://github.com/kubernetes/enhancements/pull/5409
      • [ ] https://github.com/kubernetes/enhancements/pull/5427
    • [ ] Code (k/k) update PR(s):
    • [ ] Docs (k/website) update(s):

Please keep this description up to date. This will help the Enhancement Team to track the evolution of the enhancement efficiently.

ndixita avatar Sep 11 '23 22:09 ndixita

/sig node

pacoxu avatar Sep 14 '23 08:09 pacoxu

/milestone v1.29 /label lead-opted-in /stage alpha

@ndixita please fill up more details in the issue description. Accepting as we discussed at SIG Node meeting this week

SergeyKanzhelev avatar Sep 15 '23 21:09 SergeyKanzhelev

/cc

tzneal avatar Sep 22 '23 14:09 tzneal

Hello @ndixita πŸ‘‹, v1.29 Enhancements team here.

Just checking in as we approach enhancements freeze on 01:00 UTC, Friday, 6th October, 2023.

This enhancement is targeting for stage alpha for v1.29 (correct me, if otherwise)

Here's where this enhancement currently stands:

  • [ ] KEP readme using the latest template has been merged into the k/enhancements repo.
  • [ ] KEP status is marked as implementable for latest-milestone: 1.29.
  • [ ] KEP has a production readiness review that has been completed and merged into k/enhancements.

For this KEP, we would just need to update the following:

  • The latest readme template has more items in production readiness review questionnaire that need to be addressed.
  • The status should be marked as implementable in the kep.yaml file.
  • Ensure that the PR including the production readiness review has been reviewed and merged into k/enhancements.

The status of this enhancement is marked as at risk for enhancement freeze. Please keep the issue description up-to-date with appropriate stages as well. Thank you!

rayandas avatar Sep 26 '23 19:09 rayandas

Hi @ndixita πŸ‘‹πŸ½ checking in once more as we approach the 1.29 enhancement freeze deadline on 01:00 UTC, Friday, 6th October, 2023. The status of this enhancement is marked as at risk for enhancement freeze. It looks like PR https://github.com/kubernetes/enhancements/pull/4230 will address most of the requirements. Let me know if I missed anything. Thanks.

rayandas avatar Oct 04 '23 15:10 rayandas

The KEP PR is updated, and the comments are resolved. I am waiting for PRR review

ndixita avatar Oct 05 '23 21:10 ndixita

With KEP PR https://github.com/kubernetes/enhancements/pull/4230 approved, the enhancement is ready for the enhancements freeze. The status is now marked as tracked for enhancement freeze for 1.29. πŸš€ Thank you!

npolshakova avatar Oct 06 '23 01:10 npolshakova

Hey there @ndixita! :wave:, v1.29 Docs Lead here. Does this enhancement work planned for v1.29 require any new docs or modification to existing docs? If so, please follows the steps here to open a PR against dev-1.29 branch in the k/website repo. This PR can be just a placeholder at this time and must be created before Thursday, 19 October 2023. Also, take a look at Documenting for a release to get yourself familiarize with the docs requirement for the release. Thank you!

katcosgrove avatar Oct 09 '23 08:10 katcosgrove

Hi again @ndixita! The deadline to open a placeholder PR against k/website for required documentation is this Thursday, 19 October. Could you please update me on the status of docs for this enhancement? Thank you!

katcosgrove avatar Oct 17 '23 10:10 katcosgrove

Hey again @ndixita πŸ‘‹, 1.29 Enhancements team here,

Just checking in as we approach code freeze at 01:00 UTC Wednesday 1st November 2023: .

Here's where this enhancement currently stands:

  • [ ] All PRs to the Kubernetes repo that are related to your enhancement are linked in the above issue description (for tracking purposes).

  • [ ] All PR/s are ready to be merged (they have approved and lgtm labels applied) by the code freeze deadline. This includes tests.

Please update the Issue description to include all the related PRs of this KEP under the stable section in the Github Issue description. The status for this KEP is currently at risk for code freeze.

Also, please let me know if there are other PRs in k/k we should be tracking for this KEP.

As always, we are here to help if any questions come up. :v: Thanks!

rayandas avatar Oct 29 '23 17:10 rayandas

Hi @ndixita, πŸ‘‹ from the v1.29 Release Team-Communications! We would like to check if you have any plans to publish a blog for this KEP regarding new features, removals, and deprecations for this release.

If so, you need to open a PR placeholder in the website repository. The deadline will be on Tuesday 14th November 2023 (after the Docs deadline PR ready for review)

Here is the 1.29 calendar

a-mccarthy avatar Oct 30 '23 18:10 a-mccarthy

@a-mccarthy This feature is postponed to 1.30 release

ndixita avatar Oct 30 '23 20:10 ndixita

Hello @ndixita πŸ‘‹ 1.29 Enhancements lead here,

Unfortunately, the implementation (code related) PR(s) associated with this enhancement is not in the merge-ready state by code-freeze and hence this enhancement is now removed from the 1.29 milestone.

If you still wish to progress this enhancement in 1.29, please file an exception request. Thanks!

/milestone clear

npolshakova avatar Nov 01 '23 01:11 npolshakova

This would be quite useful to have as we can use the psi metrics as a good proxy for memory pressure and potential for OOMKILL.

Thanks Aman

amannijhawan avatar Nov 07 '23 21:11 amannijhawan

/remove-label lead-opted-in

salehsedghpour avatar Jan 06 '24 15:01 salehsedghpour

/stage alpha /milestone v1.30

SergeyKanzhelev avatar Jan 26 '24 23:01 SergeyKanzhelev

Hello @ndixita , 1.30 Enhancements team here! Is this enhancement targeting 1.30? If it is, can you follow the instructions here to opt in the enhancement and make sure the lead-opted-in label is set so it can get added to the tracking board? Thanks!

salehsedghpour avatar Jan 29 '24 00:01 salehsedghpour

/label lead-opted-in

mrunalp avatar Feb 07 '24 22:02 mrunalp

Hello @ndixita πŸ‘‹, Enhancements team here.

Please ignore my previous message, I had missed your PRR.

Just checking in as we approach enhancements freeze on Friday, February 9th, 2024 at 02:00 UTC.

This enhancement is targeting for stage alpha for 1.30 (correct me, if otherwise)

Here’s where this enhancement currently stands:

  • [X] KEP readme using the latest template has been merged into the k/enhancements repo.
  • [X] KEP status is marked as implementable for latest-milestone: 1.30. KEPs targeting stable will need to be marked as implemented after code PRs are merged and the feature gates are removed.
  • [X] KEP readme has up-to-date graduation criteria.
  • [X] KEP has submitted a production readiness review request for approval and has a reviewer assigned.
  • [X] KEP has a production readiness review that has been completed and merged into k/enhancements. (For more information on the PRR process, check here).

With all the KEP requirements in place and merged into k/enhancements, this enhancement is all good for the upcoming enhancements freeze. πŸš€

The status of this enhancement is marked as tracked for enhancement freeze. Please keep the issue description up-to-date with appropriate stages as well. Thank you!

tjons avatar Feb 08 '24 20:02 tjons

@tjons this issue is marked for alpha stage in 1.30

ndixita avatar Feb 08 '24 21:02 ndixita

With all the requirements fulfilled this enhancement is now marked as tracked for the upcoming enhancements freeze πŸš€

tjons avatar Feb 09 '24 02:02 tjons

Hello @ndixita πŸ‘‹, 1.30 Docs Lead here.

Does this enhancement work planned for 1.30 require any new docs or modification to existing docs? If so, please follows the steps here to open a PR against dev-1.30 branch in the k/website repo. This PR can be just a placeholder at this time and must be created before Thursday February 22nd 2024 18:00 PDT.

Also, take a look at Documenting for a release to get yourself familiarize with the docs requirement for the release. Thank you!

drewhagen avatar Feb 15 '24 17:02 drewhagen

Hi @ndixita

πŸ‘‹ from the v1.30 Communications Team! We'd love for you to opt in to write a feature blog about your enhancement!

We encourage blogs for features including, but not limited to: breaking changes, features and changes important to our users, and features that have been in progress for a long time and are graduating.

To opt in, you need to open a Feature Blog placeholder PR against the website repository. The placeholder PR deadline is 27th February, 2024. Here's the 1.30 Release Calendar

fkautz avatar Feb 16 '24 04:02 fkautz

@fkautz This change will mostly not make it to 1.30 as it is dependent on a runc version. Hence I am not opting for a blog yet.

ndixita avatar Feb 19 '24 18:02 ndixita

Hello @ndixita πŸ‘‹, 1.30 Docs Lead here.

Does this enhancement work planned for 1.30 require any new docs or modification to existing docs? If so, please follows the steps here to open a PR against dev-1.30 branch in the k/website repo. This PR can be just a placeholder at this time and must be created before Thursday February 22nd 2024 18:00 PDT.

Also, take a look at Documenting for a release to get yourself familiarize with the docs requirement for the release. Thank you!

Hello @ndixita! The deadline to open a doc PR is due today. Just to clarify in regard to your last comment, are we thinking about moving this enhancement to 1.31? If not sure, could we open a placeholder docs PR now and that could always roll over with this KEP? Thanks!

drewhagen avatar Feb 22 '24 17:02 drewhagen

@ndixita this one right? https://github.com/opencontainers/runc/pull/3900 - looks like that would be runc 1.2.0 (which still has many blockers to get through - https://github.com/opencontainers/runc/issues/4114)

dims avatar Feb 22 '24 19:02 dims

@dims that's correct. I will probably request for removal of 1.30 milestone. @drewhagen yes this will be in 1.31 milestone given it has a lot of blockers.

ndixita avatar Feb 23 '24 21:02 ndixita

/milestone v1.31

happy to kick the can down the road

dims avatar Feb 23 '24 22:02 dims

@ndixita @dims: Hi folks, I'm not removing the lead-opted-in label since this was already planned for v1.31 back in February, please let me know if you have any questions!

sreeram-venkitesh avatar May 15 '24 01:05 sreeram-venkitesh

Hello @ndixita πŸ‘‹, Enhancements team here.

Just checking in as we approach enhancements freeze on 02:00 UTC Friday 14th June 2024 / 19:00 PDT Thursday 13th June 2024.

This enhancement is targeting stage alpha for v1.31 (correct me if otherwise)

Here's where this enhancement currently stands:

  • [x] KEP readme using the latest template has been merged into the k/enhancements repo.
  • [ ] KEP status is marked as implementable for latest-milestone: v1.31. KEPs targeting stable will need to be marked as implemented after code PRs are merged and the feature gates are removed.
  • [x] KEP readme has up-to-date graduation criteria
  • [x] KEP has a production readiness review that has been completed and merged into k/enhancements. (For more information on the PRR process, check here). If your production readiness review is not completed yet, please make sure to fill the production readiness questionnaire in your KEP by the PRR Freeze deadline of Thursday 6th June 2024 so that the PRR team has enough time to review your KEP.

For this KEP, it looks like we just need to do the following:

  • [ ] Update KEP to target latest-milestone: v1.31 rather than v1.30

The status of this enhancement is marked as at risk for enhancement freeze. Please keep the issue description up-to-date with appropriate stages as well.

If you anticipate missing enhancements freeze, you can file an exception request in advance. Thank you!

prianna avatar Jun 05 '24 04:06 prianna