kube-state-metrics icon indicating copy to clipboard operation
kube-state-metrics copied to clipboard

[waiting KSM 3.x] Map KSM STABLE metrics to k8s BETA metrics and declare meaning of KSM STABLE metrics

Open CatherineF-dev opened this issue 2 years ago • 13 comments

What this PR does / why we need it: https://github.com/kubernetes/kube-state-metrics/issues/1995

How does this change affect the cardinality of KSM: (increases, decreases or does not change cardinality) No

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged): Fixes #1995

	ALPHA Stability = Stability(basemetrics.ALPHA)
	STABLE Stability = Stability(basemetrics.BETA)

CatherineF-dev avatar Feb 15 '23 20:02 CatherineF-dev

Thanks for coming up with this! Maybe it would be better to have a paragraph around stable metrics as I believe we allow everything for experimental ones.

Imho for stable metrics only two things are allowed:

  • Additional labels are allowed
  • Bug fixes to the implementation (e.g. change specific label values or edge cases on nil value)
  • Description change

Things that we expect from stable metrics:

  • No renaming, dropping of labels
  • Metric name is considered frozen
  • Meaning/Type of the value is considered frozen
  • Stable metric can be deprecated in minor release: Lifecycle is: STABLE (2.n)-> DEPRECATED (2.n+1)-> REMOVED (2.n+2). A removal is a breaking change and will be announced prominently in the CHANGELOG.

mrueg avatar Feb 15 '23 20:02 mrueg

/triage accepted /assign

logicalhan avatar Feb 23 '23 17:02 logicalhan

We discussed in the sig-instrumentation meeting that: allow adding new labels in KSM stable metrics.

ksm stable metrics -> k8s beta metrics (it allows adding new labels) ksm alpha metrics -> k8s alpha metrics

CatherineF-dev avatar Feb 23 '23 18:02 CatherineF-dev

Ready for review~

CatherineF-dev avatar Feb 28 '23 13:02 CatherineF-dev

cc @mrueg Thanks! Have added what you mentioned.

CatherineF-dev avatar Feb 28 '23 13:02 CatherineF-dev

I personally find this confusing, since we're still using stable to mean the API can change.

logicalhan avatar Feb 28 '23 17:02 logicalhan

It seems that KSM repo's STABLE means BETA in k8s repo. In this way, users/contributors don't need to learn something new BETA.

If we want to have three stability levels in the future, it has to rename all STABLE to BETA now.

I am fine with both decisions: 1. map KSM STABLE level to k8s BETA 2. rename all STABLE to BETA.

cc @dgrisonnet @mrueg How about your opinions?

CatherineF-dev avatar Mar 01 '23 20:03 CatherineF-dev

It seems that KSM repo's STABLE means BETA in k8s repo. In this way, users/contributors don't need to learn something new BETA.

Yes we are currently treating it in a similar fashion as how k8s treats BETA.

I am totally onward with moving to k8s stability definition, but this can't be done today without a new major version of kube-state-metrics since having a STABLE level will require to rework a couple of metrics to make sure that they will never need to change.

My suggestion for now would be to stick to only have ALPHA and STABLE in ksm with different definitions from k/k and converge to a common ground with the next major.

dgrisonnet avatar Mar 16 '23 12:03 dgrisonnet

PR needs rebase.

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 Mar 17 '23 05:03 k8s-ci-robot

The Kubernetes project currently lacks enough contributors to adequately respond to all PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Mark this PR as fresh with /remove-lifecycle stale
  • Close this PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Jul 17 '23 13:07 k8s-triage-robot

/remove-lifecycle stale

CatherineF-dev avatar Jul 31 '23 01:07 CatherineF-dev

The Kubernetes project currently lacks enough contributors to adequately respond to all PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Mark this PR as fresh with /remove-lifecycle stale
  • Close this PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Jan 20 '24 18:01 k8s-triage-robot

The Kubernetes project currently lacks enough active contributors to adequately respond to all PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Mark this PR as fresh with /remove-lifecycle rotten
  • Close this PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

k8s-triage-robot avatar Feb 19 '24 18:02 k8s-triage-robot

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Reopen this PR with /reopen
  • Mark this PR as fresh with /remove-lifecycle rotten
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/close

k8s-triage-robot avatar Mar 20 '24 19:03 k8s-triage-robot

@k8s-triage-robot: Closed this PR.

In response to this:

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Reopen this PR with /reopen
  • Mark this PR as fresh with /remove-lifecycle rotten
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/close

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 Mar 20 '24 19:03 k8s-ci-robot

/reopen

CatherineF-dev avatar Mar 20 '24 19:03 CatherineF-dev

@CatherineF-dev: Reopened this PR.

In response to this:

/reopen

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 Mar 20 '24 19:03 k8s-ci-robot

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: CatherineF-dev Once this PR has been reviewed and has the lgtm label, please assign dgrisonnet for approval. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found 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 avatar Mar 20 '24 19:03 k8s-ci-robot

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Reopen this PR with /reopen
  • Mark this PR as fresh with /remove-lifecycle rotten
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/close

k8s-triage-robot avatar Apr 19 '24 19:04 k8s-triage-robot

@k8s-triage-robot: Closed this PR.

In response to this:

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Reopen this PR with /reopen
  • Mark this PR as fresh with /remove-lifecycle rotten
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/close

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 19 '24 19:04 k8s-ci-robot