|
34 | 34 | } + |
35 | 35 | if $._config.showMultiCluster then { |
36 | 36 | expr: ||| |
37 | | - (count(kube_node_info) == 1 |
| 37 | + (sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) - |
| 38 | + 0.85 * sum(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s) > 0 |
38 | 39 | and |
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) |
| 40 | + count by (cluster) (max by (cluster, node) (kube_node_info)) == 1) |
41 | 41 | or |
42 | 42 | (sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) - |
43 | 43 | (sum(kube_node_status_allocatable{%(kubeStateMetricsSelector)s,resource="cpu"}) by (%(clusterLabel)s) - |
|
51 | 51 | }, |
52 | 52 | } else { |
53 | 53 | expr: ||| |
54 | | - (count(kube_node_info) == 1 |
| 54 | + (sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) - |
| 55 | + 0.85 * sum(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s}) > 0 |
55 | 56 | and |
56 | | - sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) - |
57 | | - sum(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s}) > 0) |
| 57 | + count by (cluster) (max by (cluster, node) (kube_node_info)) == 1) |
58 | 58 | or |
59 | 59 | (sum(namespace_cpu:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) - |
60 | 60 | (sum(kube_node_status_allocatable{resource="cpu", %(kubeStateMetricsSelector)s}) - |
|
79 | 79 | } + |
80 | 80 | if $._config.showMultiCluster then { |
81 | 81 | expr: ||| |
82 | | - (count(kube_node_info) == 1 |
| 82 | + (sum(namespace_memory:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) - |
| 83 | + 0.85 * sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) by (%(clusterLabel)s) > 0 |
83 | 84 | and |
84 | | - sum(namespace_memory:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) - |
85 | | - sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) by (%(clusterLabel)s) > 0) |
| 85 | + count by (cluster) (max by (cluster, node) (kube_node_info)) == 1) |
86 | 86 | or |
87 | 87 | (sum(namespace_memory:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) by (%(clusterLabel)s) - |
88 | 88 | (sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) by (%(clusterLabel)s) - |
|
96 | 96 | }, |
97 | 97 | } else { |
98 | 98 | expr: ||| |
99 | | - (count(kube_node_info) == 1 |
| 99 | + (sum(namespace_memory:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) - |
| 100 | + 0.85 * sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) > 0 |
100 | 101 | and |
101 | | - sum(namespace_memory:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) - |
102 | | - sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) > 0) |
| 102 | + count by (cluster) (max by (cluster, node) (kube_node_info)) == 1) |
103 | 103 | or |
104 | 104 | (sum(namespace_memory:kube_pod_container_resource_requests:sum{%(ignoringOverprovisionedWorkloadSelector)s}) - |
105 | 105 | (sum(kube_node_status_allocatable{resource="memory", %(kubeStateMetricsSelector)s}) - |
|
0 commit comments