Skip to content
This repository has been archived by the owner on Feb 22, 2022. It is now read-only.

[stable/prometheus-operator] make kube-apiserver-slos configurable via defaultRules.rules.kubeApiserverSlos #22499

Merged
merged 1 commit into from
Jun 2, 2020

Conversation

k3a
Copy link
Contributor

@k3a k3a commented May 24, 2020

Is this a new chart

no

What this PR does / why we need it:

It makes kube-apiserver-slos Prometheus rule configurable like other similar rules. This rule is always firing on the hosted cluster I use, probably because higher latency of apiserver and there is no way to turn off this rule without turning off all the default rules (which I obviously don't want to do).

Which issue this PR fixes

none

Special notes for your reviewer:

Checklist

[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

  • DCO signed
  • Chart Version bumped
  • Variables are documented in the README.md
  • Title of the PR starts with chart name (e.g. [stable/mychartname])

@helm-bot helm-bot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. Contribution Allowed If the contributor has signed the DCO or the CNCF CLA (prior to the move to a DCO). labels May 24, 2020
@k8s-ci-robot
Copy link
Contributor

Hi @k3a. Thanks for your PR.

I'm waiting for a helm member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

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 k8s-ci-robot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label May 24, 2020
@vsliouniaev
Copy link
Collaborator

Rules are sourced from upstream repos and are not configurable in this chart as a result, as doing so would be too complex to manage.

Suggest you look at the upstream jsonnet approach if you need customization or extract the rules from here into your own customisations.

/hold

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label May 24, 2020
@k3a
Copy link
Contributor Author

k3a commented May 24, 2020

Yes, they are sourced from upstream but then filtered via condition_map in the sync_prometheus_rules.py. In the README.md you can see lots of similar conditions:

Parameter Description Default
defaultRules.create Create default rules for monitoring the cluster true
defaultRules.rules.PrometheusOperator Create Prometheus Operator default rules true
defaultRules.rules.alertmanager Create default rules for Alert Manager true
defaultRules.rules.etcd Create default rules for ETCD true
defaultRules.rules.general Create General default rules true
defaultRules.rules.k8s Create K8S default rules true
defaultRules.rules.kubeApiserver Create Api Server default rules true
defaultRules.rules.kubeApiserverError Create Api Server Error default rules true
defaultRules.rules.kubePrometheusNodeAlerting Create Node Alerting default rules true
defaultRules.rules.kubePrometheusNodeRecording Create Node Recording default rules true
defaultRules.rules.kubeScheduler Create Kubernetes Scheduler default rules true
defaultRules.rules.kubernetesAbsent Create Kubernetes Absent (example API Server down) default rules true
defaultRules.rules.kubernetesApps Create Kubernetes Apps default rules true
defaultRules.rules.kubernetesResources Create Kubernetes Resources default rules true
defaultRules.rules.kubernetesStorage Create Kubernetes Storage default rules true
defaultRules.rules.kubernetesSystem Create Kubernetes System default rules true
defaultRules.rules.network Create networking default rules true
defaultRules.rules.node Create Node default rules true
defaultRules.rules.prometheus Create Prometheus default rules true
defaultRules.rules.time Create time default rules true

Especially defaultRules.rules.kubeApiserverError seems to be similar to SLOs and it is even no longer present upstream.

@vsliouniaev
Copy link
Collaborator

/hold cancel
/ok-to-test
/lgtm

@k8s-ci-robot k8s-ci-robot added ok-to-test lgtm Indicates that a PR is ready to be merged. approved Indicates a PR has been approved by an approver from all required OWNERS files. and removed do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels May 26, 2020
@k3a
Copy link
Contributor Author

k3a commented May 26, 2020

/retest

1 similar comment
@vsliouniaev
Copy link
Collaborator

/retest

@vsliouniaev
Copy link
Collaborator

@k3a looks like the builds have been fixed, could you bump the chart version?

@k8s-ci-robot k8s-ci-robot removed the lgtm Indicates that a PR is ready to be merged. label May 31, 2020
@vsliouniaev
Copy link
Collaborator

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm Indicates that a PR is ready to be merged. label Jun 2, 2020
@vsliouniaev
Copy link
Collaborator

@k3a looks like this needs a version bump

@k8s-ci-robot k8s-ci-robot removed the lgtm Indicates that a PR is ready to be merged. label Jun 2, 2020
@vsliouniaev
Copy link
Collaborator

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm Indicates that a PR is ready to be merged. label Jun 2, 2020
@k8s-ci-robot k8s-ci-robot removed the lgtm Indicates that a PR is ready to be merged. label Jun 2, 2020
@vsliouniaev
Copy link
Collaborator

/lgtm

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: k3a, vsliouniaev

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 the lgtm Indicates that a PR is ready to be merged. label Jun 2, 2020
@k8s-ci-robot k8s-ci-robot merged commit 88a5176 into helm:master Jun 2, 2020
irlevesque pushed a commit to quantopian/charts that referenced this pull request Jul 13, 2020
includerandom pushed a commit to includerandom/helm_charts that referenced this pull request Jul 19, 2020
li-adrienloiseau pushed a commit to li-adrienloiseau/charts that referenced this pull request Jul 29, 2020
…erverSlos (helm#22499)

Signed-off-by: Mario Hros <[email protected]>

Co-authored-by: Mario Hros <[email protected]>
Signed-off-by: Adrien Loiseau <[email protected]>
mmingorance-dh pushed a commit to mmingorance-dh/charts that referenced this pull request Aug 28, 2020
…erverSlos (helm#22499)

Signed-off-by: Mario Hros <[email protected]>

Co-authored-by: Mario Hros <[email protected]>
Signed-off-by: Miguel Mingorance <[email protected]>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. Contribution Allowed If the contributor has signed the DCO or the CNCF CLA (prior to the move to a DCO). lgtm Indicates that a PR is ready to be merged. ok-to-test 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.

4 participants