Last active
April 15, 2024 14:05
-
-
Save jessegoodier/c0ca6ab2cfe6f598074adb92d9765eec to your computer and use it in GitHub Desktop.
Grafana dashboard for visualizing the most common resource concerns
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"annotations": { | |
"list": [ | |
{ | |
"builtIn": 1, | |
"datasource": { | |
"type": "grafana", | |
"uid": "-- Grafana --" | |
}, | |
"enable": true, | |
"hide": true, | |
"iconColor": "rgba(0, 211, 255, 1)", | |
"name": "Annotations & Alerts", | |
"type": "dashboard" | |
} | |
] | |
}, | |
"description": "Most used metrics when troubleshooting applications", | |
"editable": true, | |
"fiscalYearStartMonth": 0, | |
"graphTooltip": 0, | |
"id": 9, | |
"links": [], | |
"liveNow": false, | |
"panels": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"drawStyle": "line", | |
"fillOpacity": 0, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": false, | |
"lineInterpolation": "linear", | |
"lineWidth": 1, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "auto", | |
"spanNulls": false, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"decimals": 0, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
}, | |
"unit": "bytes" | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 0, | |
"y": 0 | |
}, | |
"id": 4, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "table", | |
"placement": "right", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"editorMode": "code", | |
"expr": "topk(5,sum(container_memory_working_set_bytes{container=~\"$container\",pod=~\"$pod\",container!=\"\",namespace=~\"$namespace\"} ) by (namespace,pod,container))", | |
"instant": false, | |
"legendFormat": "{{namespace}}/{{container}}", | |
"range": true, | |
"refId": "A" | |
} | |
], | |
"title": "Top Memory Usage", | |
"type": "timeseries" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"drawStyle": "line", | |
"fillOpacity": 0, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": false, | |
"lineInterpolation": "linear", | |
"lineWidth": 1, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "auto", | |
"spanNulls": false, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"decimals": 0, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
}, | |
"unit": "bytes" | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 12, | |
"y": 0 | |
}, | |
"id": 10, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "table", | |
"placement": "right", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"editorMode": "code", | |
"expr": "topk(5, (\r\n sum(rate(container_cpu_usage_seconds_total{image!=\"\",namespace=~\"$namespace\",pod=~\"$pod\",container=~\"$container\"}[10m])) by (namespace,pod,container)\r\n )\r\n)", | |
"instant": false, | |
"legendFormat": "{{namespace}}/{{container}}", | |
"range": true, | |
"refId": "A" | |
} | |
], | |
"title": "Top CPU Usage", | |
"type": "timeseries" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"drawStyle": "line", | |
"fillOpacity": 0, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": 3600000, | |
"lineInterpolation": "linear", | |
"lineWidth": 1, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "auto", | |
"spanNulls": false, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"decimals": 0, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
}, | |
"unit": "binBps" | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 0, | |
"y": 8 | |
}, | |
"id": 7, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "table", | |
"placement": "right", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"editorMode": "code", | |
"expr": "\n sum(rate(container_fs_writes_bytes_total\n {pod=~\"$pod\",namespace=~\"$namespace\",image!=\"\"}\n [$__rate_interval]))\n by (namespace,pod,container)\n>0 ", | |
"hide": false, | |
"instant": false, | |
"legendFormat": "{{namespace}}/{{container}}", | |
"range": true, | |
"refId": "storage_write" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"editorMode": "code", | |
"expr": "-(sum\r\n (rate(container_fs_reads_bytes_total\r\n {pod=~\"$pod\",namespace=~\"$namespace\",image!=\"\"}\r\n [$__rate_interval])) \r\nby (namespace,pod,container) \r\n) <0", | |
"hide": false, | |
"instant": false, | |
"legendFormat": "{{namespace}}/{{container}}", | |
"range": true, | |
"refId": "storage_read" | |
} | |
], | |
"title": "Storage (read is negative)", | |
"type": "timeseries" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"drawStyle": "line", | |
"fillOpacity": 0, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": false, | |
"lineInterpolation": "linear", | |
"lineWidth": 1, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "auto", | |
"spanNulls": false, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
}, | |
"unit": "bytes" | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 12, | |
"y": 8 | |
}, | |
"id": 2, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "table", | |
"placement": "right", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"editorMode": "code", | |
"expr": "sum(kubelet_volume_stats_available_bytes{namespace=~\"$namespace\"}) by (namespace,persistentvolumeclaim)", | |
"hide": false, | |
"instant": false, | |
"legendFormat": "{{namespace}}/{{persistentvolumeclaim}}", | |
"range": true, | |
"refId": "C" | |
} | |
], | |
"title": "Storage Available", | |
"type": "timeseries" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"description": "", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"drawStyle": "bars", | |
"fillOpacity": 82, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": false, | |
"lineInterpolation": "linear", | |
"lineWidth": 1, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "auto", | |
"spanNulls": false, | |
"stacking": { | |
"group": "A", | |
"mode": "normal" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"decimals": 0, | |
"mappings": [], | |
"min": 0, | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
} | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 0, | |
"y": 16 | |
}, | |
"id": 8, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "table", | |
"placement": "right", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"editorMode": "code", | |
"expr": "sum(increase(kube_pod_container_status_restarts_total{namespace=~\"$namespace\",pod=~\"$pod\"}[1h])) by (namespace,container)>0", | |
"instant": false, | |
"interval": "1h", | |
"legendFormat": "{{namespace}}/{{container}}", | |
"range": true, | |
"refId": "A" | |
} | |
], | |
"title": "Pod restarts per hour", | |
"type": "timeseries" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"description": "", | |
"fieldConfig": { | |
"defaults": { | |
"color": { | |
"mode": "palette-classic" | |
}, | |
"custom": { | |
"axisBorderShow": false, | |
"axisCenteredZero": false, | |
"axisColorMode": "text", | |
"axisLabel": "", | |
"axisPlacement": "auto", | |
"barAlignment": 0, | |
"drawStyle": "line", | |
"fillOpacity": 0, | |
"gradientMode": "none", | |
"hideFrom": { | |
"legend": false, | |
"tooltip": false, | |
"viz": false | |
}, | |
"insertNulls": 3600000, | |
"lineInterpolation": "smooth", | |
"lineStyle": { | |
"fill": "solid" | |
}, | |
"lineWidth": 1, | |
"pointSize": 5, | |
"scaleDistribution": { | |
"type": "linear" | |
}, | |
"showPoints": "auto", | |
"spanNulls": false, | |
"stacking": { | |
"group": "A", | |
"mode": "none" | |
}, | |
"thresholdsStyle": { | |
"mode": "off" | |
} | |
}, | |
"mappings": [], | |
"thresholds": { | |
"mode": "absolute", | |
"steps": [ | |
{ | |
"color": "green", | |
"value": null | |
}, | |
{ | |
"color": "red", | |
"value": 80 | |
} | |
] | |
}, | |
"unit": "binBps" | |
}, | |
"overrides": [] | |
}, | |
"gridPos": { | |
"h": 8, | |
"w": 12, | |
"x": 12, | |
"y": 16 | |
}, | |
"id": 3, | |
"options": { | |
"legend": { | |
"calcs": [], | |
"displayMode": "table", | |
"placement": "right", | |
"showLegend": true | |
}, | |
"tooltip": { | |
"mode": "single", | |
"sort": "none" | |
} | |
}, | |
"targets": [ | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"editorMode": "code", | |
"expr": "sum(topk(5,rate(container_network_receive_bytes_total{pod=~\"$pod\",namespace=~\"$namespace\"}[$__rate_interval]))) by (namespace,pod) ", | |
"hide": false, | |
"instant": false, | |
"legendFormat": "{{namespace}}/{{pod}}", | |
"range": true, | |
"refId": "receive" | |
}, | |
{ | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"editorMode": "code", | |
"expr": "-sum(topk(5,rate(container_network_transmit_bytes_total{pod=~\"$pod\",namespace=~\"$namespace\"}[$__rate_interval]))) by (namespace,pod) ", | |
"hide": false, | |
"instant": false, | |
"legendFormat": "{{namespace}}/{{pod}}", | |
"range": true, | |
"refId": "transmit" | |
} | |
], | |
"title": "Top Network (transmit is negative)", | |
"type": "timeseries" | |
} | |
], | |
"refresh": "5s", | |
"schemaVersion": 39, | |
"tags": [], | |
"templating": { | |
"list": [ | |
{ | |
"current": { | |
"selected": false, | |
"text": "Prometheus", | |
"value": "prometheus" | |
}, | |
"hide": 0, | |
"includeAll": false, | |
"multi": false, | |
"name": "datasource", | |
"options": [], | |
"query": "prometheus", | |
"queryValue": "", | |
"refresh": 1, | |
"regex": "", | |
"skipUrlSync": false, | |
"type": "datasource" | |
}, | |
{ | |
"current": { | |
"isNone": true, | |
"selected": false, | |
"text": "None", | |
"value": "" | |
}, | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"definition": "label_values(container_memory_working_set_bytes,cluster_id)", | |
"hide": 0, | |
"includeAll": false, | |
"multi": false, | |
"name": "cluster", | |
"options": [], | |
"query": { | |
"qryType": 1, | |
"query": "label_values(container_memory_working_set_bytes,cluster_id)", | |
"refId": "PrometheusVariableQueryEditor-VariableQuery" | |
}, | |
"refresh": 1, | |
"regex": "", | |
"skipUrlSync": false, | |
"sort": 0, | |
"type": "query" | |
}, | |
{ | |
"current": { | |
"selected": false, | |
"text": "All", | |
"value": "$__all" | |
}, | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"definition": "label_values(kube_pod_info{cluster_id=~\"$cluster\"},namespace)", | |
"hide": 0, | |
"includeAll": true, | |
"multi": false, | |
"name": "namespace", | |
"options": [], | |
"query": { | |
"qryType": 1, | |
"query": "label_values(kube_pod_info{cluster_id=~\"$cluster\"},namespace)", | |
"refId": "PrometheusVariableQueryEditor-VariableQuery" | |
}, | |
"refresh": 1, | |
"regex": "", | |
"skipUrlSync": false, | |
"sort": 5, | |
"type": "query" | |
}, | |
{ | |
"current": { | |
"selected": false, | |
"text": "All", | |
"value": "$__all" | |
}, | |
"datasource": { | |
"type": "prometheus", | |
"uid": "${datasource}" | |
}, | |
"definition": "label_values(kube_pod_container_info{namespace=~\"$namespace\", cluster_id=~\"$cluster\"},pod)", | |
"hide": 0, | |
"includeAll": true, | |
"multi": false, | |
"name": "pod", | |
"options": [], | |
"query": { | |
"qryType": 1, | |
"query": "label_values(kube_pod_container_info{namespace=~\"$namespace\", cluster_id=~\"$cluster\"},pod)", | |
"refId": "PrometheusVariableQueryEditor-VariableQuery" | |
}, | |
"refresh": 1, | |
"regex": "", | |
"skipUrlSync": false, | |
"sort": 5, | |
"type": "query" | |
}, | |
{ | |
"current": { | |
"selected": false, | |
"text": "All", | |
"value": "$__all" | |
}, | |
"datasource": { | |
"type": "prometheus", | |
"uid": "prometheus" | |
}, | |
"definition": "label_values(container_memory_working_set_bytes{namespace=~\"$namespace\", cluster_id=~\"$cluster\"},container)", | |
"hide": 0, | |
"includeAll": true, | |
"multi": false, | |
"name": "container", | |
"options": [], | |
"query": { | |
"qryType": 1, | |
"query": "label_values(container_memory_working_set_bytes{namespace=~\"$namespace\", cluster_id=~\"$cluster\"},container)", | |
"refId": "PrometheusVariableQueryEditor-VariableQuery" | |
}, | |
"refresh": 1, | |
"regex": "", | |
"skipUrlSync": false, | |
"sort": 5, | |
"type": "query" | |
} | |
] | |
}, | |
"time": { | |
"from": "now-1h", | |
"to": "now" | |
}, | |
"timepicker": {}, | |
"timezone": "", | |
"title": "Workload Metrics", | |
"uid": "cdipcefi83f9ca", | |
"version": 1, | |
"weekStart": "" | |
} |
Author
jessegoodier
commented
Apr 13, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment