Skip to content

Commit fc9fe6a

Browse files
committed
s/kube_node_info/kube_node_role
Use kube_node_role{role="control-plane"} (see [1] and [2]) to estimate if the cluster is HA or not. * [1]: https://github.com/search?q=repo%3Akubernetes%2Fkube-state-metrics%20kube_node_role&type=code * [2]: https://kubernetes.io/docs/reference/labels-annotations-taints/#node-role-kubernetes-io-control-plane Also drop any thresholds as they would lead to false positives.
1 parent 41645e2 commit fc9fe6a

File tree

1 file changed

+8
-8
lines changed

1 file changed

+8
-8
lines changed

alerts/resource_alerts.libsonnet

+8-8
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,9 @@ local utils = import '../lib/utils.libsonnet';
3737
if $._config.showMultiCluster then {
3838
expr: |||
3939
(sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) -
40-
0.85 * sum(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s) > 0
40+
sum(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s) > 0
4141
and
42-
count by (cluster) (max by (cluster, node) (kube_node_info)) == 1)
42+
count by (cluster) (max by (cluster, node) (kube_node_role{role="control-plane"})) < 3)
4343
or
4444
(sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) -
4545
(sum(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s) -
@@ -54,9 +54,9 @@ local utils = import '../lib/utils.libsonnet';
5454
} else {
5555
expr: |||
5656
(sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) -
57-
0.85 * sum(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s}) > 0
57+
sum(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s}) > 0
5858
and
59-
count(max by (node) (kube_node_info)) == 1)
59+
count(max by (node) (kube_node_role{role="control-plane"})) < 3)
6060
or
6161
(sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) -
6262
(sum(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s}) -
@@ -82,9 +82,9 @@ local utils = import '../lib/utils.libsonnet';
8282
if $._config.showMultiCluster then {
8383
expr: |||
8484
(sum(namespace_memory:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) -
85-
0.85 * sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) by (%(clusterLabel)s) > 0
85+
sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) by (%(clusterLabel)s) > 0
8686
and
87-
count by (cluster) (max by (cluster, node) (kube_node_info)) == 1)
87+
count by (cluster) (max by (cluster, node) (kube_node_role{role="control-plane"})) < 3)
8888
or
8989
(sum(namespace_memory:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) -
9090
(sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) by (%(clusterLabel)s) -
@@ -99,9 +99,9 @@ local utils = import '../lib/utils.libsonnet';
9999
} else {
100100
expr: |||
101101
(sum(namespace_memory:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) -
102-
0.85 * sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) > 0
102+
sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) > 0
103103
and
104-
count(max by (node) (kube_node_info)) == 1)
104+
count(max by (node) (kube_node_role{role="control-plane"})) < 3)
105105
or
106106
(sum(namespace_memory:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) -
107107
(sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) -

0 commit comments

Comments
 (0)