Account for multiple copies of kube-state-metrics
This can happen if you run multiple replicas, or if you redeploy kube-state-metrics. In either case, prometheus records multiple metrics with the instance ip in, and the dashboard fails. Use aggregation functions to get sensible output in either case
This commit is contained in:
@@ -302,7 +302,7 @@
|
|||||||
"targets": [
|
"targets": [
|
||||||
{
|
{
|
||||||
"refId": "A",
|
"refId": "A",
|
||||||
"expr": "kube_deployment_spec_replicas{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}",
|
"expr": "max(kube_deployment_spec_replicas{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}) without (instance)",
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
"step": 600,
|
"step": 600,
|
||||||
"metric": "kube_deployment_spec_replicas"
|
"metric": "kube_deployment_spec_replicas"
|
||||||
@@ -381,7 +381,7 @@
|
|||||||
"targets": [
|
"targets": [
|
||||||
{
|
{
|
||||||
"refId": "A",
|
"refId": "A",
|
||||||
"expr": "kube_deployment_status_replicas_available{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}",
|
"expr": "min(kube_deployment_status_replicas_available{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}) without (instance)",
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
"step": 600
|
"step": 600
|
||||||
}
|
}
|
||||||
@@ -505,7 +505,7 @@
|
|||||||
},
|
},
|
||||||
"targets": [
|
"targets": [
|
||||||
{
|
{
|
||||||
"expr": "kube_deployment_status_observed_generation{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}",
|
"expr": "max(kube_deployment_status_observed_generation{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}) without (instance)",
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
"legendFormat": "",
|
"legendFormat": "",
|
||||||
"refId": "A",
|
"refId": "A",
|
||||||
@@ -583,7 +583,7 @@
|
|||||||
},
|
},
|
||||||
"targets": [
|
"targets": [
|
||||||
{
|
{
|
||||||
"expr": "kube_deployment_metadata_generation{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}",
|
"expr": "max(kube_deployment_metadata_generation{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}) without (instance)",
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
"legendFormat": "",
|
"legendFormat": "",
|
||||||
"refId": "A",
|
"refId": "A",
|
||||||
@@ -649,35 +649,35 @@
|
|||||||
"steppedLine": false,
|
"steppedLine": false,
|
||||||
"targets": [
|
"targets": [
|
||||||
{
|
{
|
||||||
"expr": "kube_deployment_status_replicas{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}",
|
"expr": "max(kube_deployment_status_replicas{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}) without (instance)",
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
"legendFormat": "current replicas",
|
"legendFormat": "current replicas",
|
||||||
"refId": "A",
|
"refId": "A",
|
||||||
"step": 30
|
"step": 30
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"expr": "kube_deployment_status_replicas_available{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}",
|
"expr": "min(kube_deployment_status_replicas_available{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}) without (instance)",
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
"legendFormat": "available",
|
"legendFormat": "available",
|
||||||
"refId": "B",
|
"refId": "B",
|
||||||
"step": 30
|
"step": 30
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"expr": "kube_deployment_status_replicas_unavailable{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}",
|
"expr": "max(kube_deployment_status_replicas_unavailable{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}) without (instance)",
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
"legendFormat": "unavailable",
|
"legendFormat": "unavailable",
|
||||||
"refId": "C",
|
"refId": "C",
|
||||||
"step": 30
|
"step": 30
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"expr": "kube_deployment_status_replicas_updated{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}",
|
"expr": "min(kube_deployment_status_replicas_updated{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}) without (instance)",
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
"legendFormat": "updated",
|
"legendFormat": "updated",
|
||||||
"refId": "D",
|
"refId": "D",
|
||||||
"step": 30
|
"step": 30
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"expr": "kube_deployment_spec_replicas{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}",
|
"expr": "max(kube_deployment_spec_replicas{deployment=\"$deployment_name\",namespace=\"$deployment_namespace\"}) without (instance)",
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
"legendFormat": "desired",
|
"legendFormat": "desired",
|
||||||
"refId": "E",
|
"refId": "E",
|
||||||
|
|||||||
Reference in New Issue
Block a user