enhancements icon indicating copy to clipboard operation
enhancements copied to clipboard

Metric cardinality enforcement

Open ehashman opened this issue 4 years ago • 116 comments

Enhancement Description

  • One-line enhancement description (can be used as a release note): Dynamically configure allowlists for metric label values at runtime
  • Kubernetes Enhancement Proposal: https://github.com/kubernetes/enhancements/tree/master/keps/sig-instrumentation/2305-metrics-cardinality-enforcement
  • Discussion Link: https://github.com/kubernetes/community/blob/master/sig-instrumentation/archive/meeting-notes-2020.md#agenda-2020-04-02
  • Primary contact (assignee): @logicalhan @YoyinZyc
  • Responsible SIGs: /sig instrumentation
  • Enhancement target (which target equals to which milestone):
    • Alpha release target (x.y): 1.21
    • Beta release target (x.y): 1.28-1.29
    • Stable release target (x.y): 1.31
  • [x] Alpha
    • [x] KEP (k/enhancements) update PR(s):
      • https://github.com/kubernetes/enhancements/pull/2431
      • https://github.com/kubernetes/enhancements/pull/2468
    • [x] Code (k/k) update PR(s):
      • https://github.com/kubernetes/kubernetes/pull/99385
    • [x] Docs (k/website) update PR(s):
      • https://github.com/kubernetes/website/pull/27069
  • [x] Beta
    • [x] KEP (k/enhancements) update PR(s):
      • 1.28 https://github.com/kubernetes/enhancements/pull/4039
    • [x] Code (k/k) update PR(s):
      • 1.29 https://github.com/kubernetes/kubernetes/pull/118299
    • [x] Docs (k/website) update(s):
      • 1.29 https://github.com/kubernetes/website/pull/41998
  • [ ] Stable
    • [ ] KEP (k/enhancements) update PR(s):
      • [x] 1.30 https://github.com/kubernetes/enhancements/pull/4422
      • [x] 1.30 https://github.com/kubernetes/enhancements/pull/4499
      • [x] 1.31 https://github.com/kubernetes/enhancements/pull/4695
    • [ ] 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.

ehashman avatar Jan 21 '21 18:01 ehashman

/sig instrumentation /stage alpha

ehashman avatar Jan 21 '21 18:01 ehashman

@ehashman is there any action items for either Han or me? Thank you!

lilic avatar Jan 25 '21 11:01 lilic

@lilic this KEP graduated to alpha last cycle (1.20), it would be good to finish up beta and graduation criteria and target releases for those.

ehashman avatar Jan 27 '21 00:01 ehashman

@lilic @logicalhan once we have beta/graduation criteria we should decide how we want to target milestones for this moving forward. That's all currently empty:

https://github.com/kubernetes/enhancements/tree/master/keps/sig-instrumentation/2305-metrics-cardinality-enforcement#post-beta-tasks

ehashman avatar Jan 27 '21 18:01 ehashman

/milestone v1.21

slipped from 1.20

ehashman avatar Feb 04 '21 17:02 ehashman

Hi @logicalhan and @lilic, 1.21 Enhancements Lead here

For the enhancement to be included in the milestone, it must meet the following criteria:

  • [DONE] ~The KEP must be merged in an implementable state~
  • The KEP must have test plans
  • The KEP must have graduation criteria
  • The KEP must have a production readiness review

Please make sure you update the KEP using the latest template.

Also starting 1.21, all KEP must include a production readiness review. Please make sure to take a look at the instructions and update the KEP to include this. For PRR review, please make sure to reach out to #prod-readiness slack channel asap to get this in before the enhancements freeze coming up on Feb. 9th.

Thank you!

annajung avatar Feb 06 '21 00:02 annajung

Hey @logicalhan and @lilic, 1.21 enhancements shadow here,

Just to add to Anna's comment above — enhancement's freeze is 2 days away, Feb 9th EOD PST. Any enhancements that do not complete the requirements in Anna's comment above by the freeze will require an exception.

JamesLaverack avatar Feb 07 '21 18:02 JamesLaverack

I've pinged @logicalhan about getting this added today.

ehashman avatar Feb 08 '21 18:02 ehashman

Opened https://github.com/kubernetes/enhancements/pull/2468 to update kep and request for PPR approval.

YoyinZyc avatar Feb 08 '21 21:02 YoyinZyc

@annajung everything should now be addressed.

ehashman avatar Feb 10 '21 00:02 ehashman

With PR https://github.com/kubernetes/enhancements/pull/2468 merged, this enhancement meets all criteria required for the enhancements freeze 👍

annajung avatar Feb 10 '21 00:02 annajung

ref kubernetes/kubernetes#97208

I have a couple of suggestions for extensions:

  • Can we generalize the proposal to allow for mapping? That is, instead of replacing the value with "unknown", allowing configurable renaming, maybe with numeric intervals or regex.
  • Make this configurable via component configs, as a CLI arg would be harder to maintain.

alculquicondor avatar Feb 11 '21 14:02 alculquicondor

Hi @logicalhan and @lilic,

Since your Enhancement is scheduled to be in 1.21, please keep in mind the important upcoming dates:

  • Tuesday, March 9th: Week 9 — Code Freeze
  • Tuesday, March 16th: Week 10 — Docs Placeholder PR deadline
    • If this enhancement requires new docs or modification to existing docs, please follow the steps in the Open a placeholder PR doc to open a PR against k/website repo.

As a reminder, please link all of your k/k PR(s) and k/website PR(s) to this issue so we can track them.

Thanks!

JamesLaverack avatar Feb 19 '21 23:02 JamesLaverack

Hi @logicalhan and @lilic,

Enhancements team is marking this enhancement as "At Risk" for the upcoming code freeze due to not seeing any linked k/k PR(s) for this enhancement.

Please make sure to provide all k/k PR(s) and k/website PR(s) to this issue so it can be tracked by the release team.

JamesLaverack avatar Mar 02 '21 11:03 JamesLaverack

@JamesLaverack I'm updating the point contacts to be @logicalhan and @YoyinZyc

ehashman avatar Mar 02 '21 17:03 ehashman

@JamesLaverack There is one ongoing pr https://github.com/kubernetes/kubernetes/pull/99385

YoyinZyc avatar Mar 02 '21 18:03 YoyinZyc

ref kubernetes/kubernetes#97208

I have a couple of suggestions for extensions:

  • Can we generalize the proposal to allow for mapping? That is, instead of replacing the value with "unknown", allowing configurable renaming, maybe with numeric intervals or regex.
  • Make this configurable via component configs, as a CLI arg would be harder to maintain.

I think they are good ideas. I'll keep that in mind. Thanks!

YoyinZyc avatar Mar 02 '21 18:03 YoyinZyc

@ehashman Thanks for the clarification! We'll update our tracking spreadsheet to reflect that.

@YoyinZyc Thank you for linking me, i've set this enhancement back to "Tracked". I see that https://github.com/kubernetes/kubernetes/pull/99385 is now merged. Are there any other k/k pull requests outstanding (/need doing before code freeze) or can I mark you as done?

JamesLaverack avatar Mar 03 '21 17:03 JamesLaverack

Yuchen Zhou Thank you for linking me, i've set this enhancement back to "Tracked". I see that kubernetes/kubernetes#99385 is now merged. Are there any other k/k pull requests outstanding (/need doing before code freeze) or can I mark you as done?

@JamesLaverack I have one more pr https://github.com/kubernetes/kubernetes/pull/99738. Once it is merged, you can mark it as done.:)

YoyinZyc avatar Mar 04 '21 00:03 YoyinZyc

Code changes are complete, we just need to follow up with documentation updates.

ehashman avatar Mar 04 '21 18:03 ehashman

Code changes are complete, we just need to follow up with documentation updates.

Can you give me some instruction on which document I should update? I am not sure I know all. Thanks!

YoyinZyc avatar Mar 04 '21 18:03 YoyinZyc

Thanks both. I've now updated the enhancement tracking spreadsheet to note this enhancement as done for code freeze.

JamesLaverack avatar Mar 05 '21 00:03 JamesLaverack

Hello @YoyinZyc , 1.21 Docs shadow here. Does this enhancement work planned for 1.21 require any new docs or modification to existing docs? If so, please follows the steps here to open a PR against dev-1.21 branch in the k/website repo. This PR can be just a placeholder at this time and must be created by March 16 EOD PST Also take a look at Documenting for a release to get yourself familiarize with the docs requirement for the release. Thank you!

PI-Victor avatar Mar 10 '21 07:03 PI-Victor

Hi @logicalhan and @YoyinZyc, 1.21 Docs lead here. Just a reminder that the Docs Placeholder PR deadline for 1.21 is around the corner on March 16. If this enhancement needs new documentation or an entry/update to the feature gates page please open a PR against the dev-1.21 branch in the k/website repo.

reylejano avatar Mar 13 '21 01:03 reylejano

@reylejano kubernetes/website#27069 is there waiting for owners' approval.

YoyinZyc avatar Mar 15 '21 19:03 YoyinZyc

/remove-label tracked/yes /label stage/beta /milestone v1.22

ehashman avatar Apr 15 '21 17:04 ehashman

@ehashman: The label(s) /label stage/beta , /remove-label tracked/yes cannot be applied. These labels are supported: api-review, tide/merge-method-merge, tide/merge-method-rebase, tide/merge-method-squash, team/katacoda

In response to this:

/remove-label tracked/yes /label stage/beta /milestone v1.22

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.

k8s-ci-robot avatar Apr 15 '21 17:04 k8s-ci-robot

/stage beta /remove-stage alpha

ehashman avatar Apr 15 '21 17:04 ehashman

/milestone v1.22

ehashman avatar Apr 29 '21 17:04 ehashman

Oh I did that already, woot :)

ehashman avatar Apr 29 '21 17:04 ehashman