|
34 | 34 | } + |
35 | 35 | if $._config.showMultiCluster then { |
36 | 36 | expr: ||| |
37 | | - sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) - (sum(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s) - max(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s)) > 0 |
| 37 | + (count(kube_node_info) == 1 |
38 | 38 | and |
39 | | - (sum(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s) - max(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s)) > 0 |
| 39 | + sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) - |
| 40 | + sum(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s) > 0) |
| 41 | + or |
| 42 | + (sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) - |
| 43 | + (sum(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s) - |
| 44 | + max(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s)) > 0 |
| 45 | + and |
| 46 | + (sum(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s) - |
| 47 | + max(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s)) > 0) |
40 | 48 | ||| % $._config, |
41 | 49 | annotations+: { |
42 | 50 | description: 'Cluster {{ $labels.%(clusterLabel)s }} has overcommitted CPU resource requests for Pods by {{ $value }} CPU shares and cannot tolerate node failure.' % $._config, |
43 | 51 | }, |
44 | 52 | } else { |
45 | 53 | expr: ||| |
46 | | - sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) - (sum(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s}) - max(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s})) > 0 |
| 54 | + (count(kube_node_info) == 1 |
| 55 | + and |
| 56 | + sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) - |
| 57 | + sum(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s}) > 0) |
| 58 | + or |
| 59 | + (sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) - |
| 60 | + (sum(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s}) - |
| 61 | + max(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s})) > 0 |
47 | 62 | and |
48 | | - (sum(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s}) - max(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s})) > 0 |
| 63 | + (sum(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s}) - |
| 64 | + max(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s})) > 0) |
49 | 65 | ||| % $._config, |
50 | 66 | annotations+: { |
51 | 67 | description: 'Cluster has overcommitted CPU resource requests for Pods by {{ $value }} CPU shares and cannot tolerate node failure.' % $._config, |
|
0 commit comments