From ca2155084318d9d78e334f1f2d50609379d9b3ef Mon Sep 17 00:00:00 2001 From: nkinkade Date: Fri, 28 Oct 2022 09:42:57 -0600 Subject: [PATCH] Fixes and improvements to SiteOverview dashboard (#958) * Fixes and improvements to SiteOverview dashboard This commit started as nothing more than looking into fixing the "Memory" panel, which was showing something fairly off of what `top` on the machine was showing. This was fixed, but while in the dashboard I realized that a few other things were broken or needed updating: * The "pod" select box had no values. Fixed. * I migrated all legacy "Graph (old)" panels to the new "Timeseries" type. * Limited the "Pod CPU Usage" panel to only display timeseries where the value is greater than 1%. * Set hover tip on various panels to sort descending. * Updatesj "go routine counts" panel to have hover tip display " ()" instead of " ". * Removes "- RSS" from "Go RSS" panel hover tip items (redundant). * Changed the "pod" variable custom "All" value from ".*" to ".+". * Replaces Load1 panel with a CPU panel Load average requires too much context to understand at a glance whether any given value is important or not. On the other hand CPU usage (as a percentage of total) gives you a good idea of how busy the CPUs are at a glance. * Small improvements to SiteOverview dashboard * Removes legend from most all panels (wasn't useful, took up space). * Resizes "Pod" panels to same size. * Migrates "Disk I/O" panel to newer "Timeseries" panel type. * Moves "Process count" panel to far bottom right. * Slight tweaks to a couple of panel names. * Replaces Load1 panel with CPU usage panel This commit makes the same changes to this dashboard that are being made to the full SiteOverview dashboard. Namely: * Replaces Load1 panel with CPU usage panel * Updates memory panel with better representation of actual memory usage by adding new metrics in aggregation. Combines the "Buffer" and "Cache" queries into a single "Buff/Cache" query. Renames "Active" query to "Usage". * Removes legend from all panels. Space is very limited on this dashboard, and a user can hover to see what lines represent what. --- .../grafana/dashboards/K8s_SiteOverview.json | 1526 +++++++++-------- .../dashboards/K8s_SiteOverviewTerse.json | 49 +- 2 files changed, 873 insertions(+), 702 deletions(-) diff --git a/config/federation/grafana/dashboards/K8s_SiteOverview.json b/config/federation/grafana/dashboards/K8s_SiteOverview.json index 26c621da..f5ff5ec8 100644 --- a/config/federation/grafana/dashboards/K8s_SiteOverview.json +++ b/config/federation/grafana/dashboards/K8s_SiteOverview.json @@ -3,7 +3,10 @@ "list": [ { "builtIn": 1, - "datasource": "-- Grafana --", + "datasource": { + "type": "datasource", + "uid": "grafana" + }, "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", @@ -22,12 +25,15 @@ "fiscalYearStartMonth": 0, "graphTooltip": 1, "id": 246, - "iteration": 1659542413927, "links": [], "liveNow": false, "panels": [ { "collapsed": false, + "datasource": { + "type": "prometheus", + "uid": "xIXR1_LMz" + }, "gridPos": { "h": 1, "w": 24, @@ -36,6 +42,15 @@ }, "id": 46, "panels": [], + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "xIXR1_LMz" + }, + "refId": "A" + } + ], "title": "Site", "type": "row" }, @@ -115,7 +130,7 @@ }, "textMode": "auto" }, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "targets": [ { "datasource": { @@ -211,7 +226,7 @@ }, "textMode": "auto" }, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "targets": [ { "datasource": { @@ -279,7 +294,7 @@ }, "textMode": "name" }, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "targets": [ { "datasource": { @@ -300,6 +315,10 @@ }, { "collapsed": false, + "datasource": { + "type": "prometheus", + "uid": "xIXR1_LMz" + }, "gridPos": { "h": 1, "w": 24, @@ -309,6 +328,15 @@ "id": 34, "panels": [], "repeat": "node", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "xIXR1_LMz" + }, + "refId": "A" + } + ], "title": "$node-$site", "type": "row" }, @@ -373,9 +401,12 @@ }, "textMode": "auto" }, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "targets": [ { + "datasource": { + "uid": "$datasource" + }, "expr": "(time() - node_boot_time_seconds{node=~\"$node.$site.*\"}) / (60 * 60 * 24)", "format": "time_series", "instant": true, @@ -463,9 +494,12 @@ }, "textMode": "auto" }, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "targets": [ { + "datasource": { + "uid": "$datasource" + }, "expr": "count(kube_pod_info{node=\"$node.$site.measurement-lab.org\"} == 1 and on(exported_pod) kube_pod_status_ready{condition=\"true\"}) != \n count(kube_daemonset_status_desired_number_scheduled{daemonset!~\"(kube-flannel-ds-virtual)\"} > 0) OR vector(0)", "format": "time_series", "instant": true, @@ -555,7 +589,7 @@ }, "textMode": "auto" }, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "targets": [ { "datasource": { @@ -651,9 +685,12 @@ }, "textMode": "auto" }, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "targets": [ { + "datasource": { + "uid": "$datasource" + }, "expr": "kube_node_spec_taint{cluster=\"platform-cluster\", key=\"lame-duck\", node=~\"$node-$site.*\"}", "format": "time_series", "instant": true, @@ -729,9 +766,12 @@ }, "textMode": "auto" }, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "targets": [ { + "datasource": { + "uid": "$datasource" + }, "expr": "node_load15{node=~\"$node.$site.*\"}", "format": "time_series", "instant": true, @@ -807,9 +847,12 @@ }, "textMode": "auto" }, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "targets": [ { + "datasource": { + "uid": "$datasource" + }, "expr": "(node_filesystem_size_bytes{mountpoint=\"/\", node=~\"$node.$site.*\"} -\n node_filesystem_avail_bytes{mountpoint=\"/\", node=~\"$node.$site.*\"})\n/ node_filesystem_size_bytes{mountpoint=\"/\", node=~\"$node.$site.*\"}", "format": "time_series", "instant": true, @@ -887,7 +930,7 @@ }, "textMode": "auto" }, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "targets": [ { "datasource": { @@ -983,7 +1026,7 @@ }, "textMode": "auto" }, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "targets": [ { "datasource": { @@ -1003,176 +1046,244 @@ "type": "stat" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, "datasource": { + "type": "prometheus", "uid": "$datasource" }, + "description": "Average sec/sec usage across all CPUs available to the machine.", "fieldConfig": { "defaults": { - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percentunit" }, - "overrides": [] + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Cached bytes" + }, + "properties": [ + { + "id": "unit", + "value": "short" + }, + { + "id": "custom.axisPlacement", + "value": "hidden" + } + ] + } + ] }, - "fill": 1, - "fillGradient": 0, "gridPos": { "h": 6, "w": 6, "x": 0, "y": 6 }, - "hiddenSeries": false, "id": 32, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": false, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "8.3.4", - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [ - { - "alias": "Cached bytes", - "yaxis": 2 + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "mode": "multi", + "sort": "none" } - ], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + }, + "pluginVersion": "9.1.5", "targets": [ { - "expr": "node_load1{node=~\"$node-$site.*\"}", + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", + "expr": "1 - avg by (node) (rate(node_cpu_seconds_total{node=~\"$node-$site.*\", mode=\"idle\"}[$__rate_interval]))", "format": "time_series", "intervalFactor": 1, - "legendFormat": "Load1", + "legendFormat": "$node-$site", + "range": true, "refId": "A" } ], - "thresholds": [], - "timeRegions": [], - "title": "Load1", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "none", - "logBase": 1, - "min": "0", - "show": true - }, - { - "format": "short", - "logBase": 1, - "show": false - } - ], - "yaxis": { - "align": false - } + "title": "CPU", + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, "datasource": { + "type": "prometheus", "uid": "$datasource" }, "fieldConfig": { "defaults": { - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "percent" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" }, - "overrides": [] + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Cached bytes" + }, + "properties": [ + { + "id": "unit", + "value": "short" + } + ] + } + ] }, - "fill": 1, - "fillGradient": 0, "gridPos": { "h": 6, "w": 6, "x": 6, "y": 6 }, - "hiddenSeries": false, "id": 31, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true - }, - "percentage": true, - "pluginVersion": "8.3.4", - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [ - { - "alias": "Cached bytes", - "yaxis": 2 + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" } - ], - "spaceLength": 10, - "stack": true, - "steppedLine": false, + }, + "pluginVersion": "9.1.5", "targets": [ { - "expr": "node_memory_Cached_bytes{node=~\"$node-$site.*\"}", + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", + "expr": "node_memory_Cached_bytes{node=~\"$node-$site.*\"}\n+ node_memory_Buffers_bytes\n+ node_memory_SReclaimable_bytes", "format": "time_series", "intervalFactor": 1, - "legendFormat": "Cache", + "legendFormat": "Buff/Cache", + "range": true, "refId": "A" }, { - "expr": "node_memory_Buffers_bytes{node=~\"$node-$site.*\"}", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": "Buffers", - "refId": "B" - }, - { - "expr": "node_memory_Active_bytes{node=~\"$node-$site.*\"}", + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", + "expr": "node_memory_Active_bytes{node=~\"$node-$site.*\"}\n+ node_memory_Active_anon_bytes\n+ node_memory_Active_file_bytes", "format": "time_series", "intervalFactor": 1, - "legendFormat": "Active", + "legendFormat": "Used", + "range": true, "refId": "D" }, { + "datasource": { + "uid": "$datasource" + }, "expr": "node_memory_MemFree_bytes{node=~\"$node-$site.*\"}", "format": "time_series", "intervalFactor": 1, @@ -1180,36 +1291,8 @@ "refId": "E" } ], - "thresholds": [], - "timeRegions": [], - "title": "Memory", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "bytes", - "logBase": 1, - "min": "0", - "show": true - }, - { - "format": "short", - "logBase": 1, - "show": true - } - ], - "yaxis": { - "align": false - } + "title": "Memory (stacked)", + "type": "timeseries" }, { "aliasColors": {}, @@ -1253,7 +1336,7 @@ "alertThreshold": true }, "percentage": false, - "pluginVersion": "8.3.4", + "pluginVersion": "9.1.5", "pointradius": 5, "points": false, "renderer": "flot", @@ -1266,24 +1349,28 @@ "datasource": { "uid": "$datasource" }, + "editorMode": "code", "exemplar": true, - "expr": "8 * rate(node_network_transmit_bytes_total{device=~\"(eth0|ens4)\", node=~\"$node-$site.*\"}[4m])", + "expr": "8 * rate(node_network_transmit_bytes_total{device=~\"(eth0|ens4)\", node=~\"$node-$site.*\"}[$__rate_interval])", "format": "time_series", "interval": "", "intervalFactor": 1, "legendFormat": "TX eth0", + "range": true, "refId": "A" }, { "datasource": { "uid": "$datasource" }, + "editorMode": "code", "exemplar": true, - "expr": "- 8 * rate(node_network_receive_bytes_total{device=~\"(eth0|ens4)\", node=~\"$node-$site.*\"}[4m])", + "expr": "- 8 * rate(node_network_receive_bytes_total{device=~\"(eth0|ens4)\", node=~\"$node-$site.*\"}[$__rate_interval])", "format": "time_series", "interval": "", "intervalFactor": 1, "legendFormat": "RX eth0", + "range": true, "refId": "B" } ], @@ -1320,692 +1407,781 @@ } }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, "datasource": { + "type": "prometheus", "uid": "$datasource" }, "fieldConfig": { "defaults": { - "links": [] - }, - "overrides": [] - }, - "fill": 1, - "fillGradient": 0, - "gridPos": { - "h": 6, - "w": 6, - "x": 18, - "y": 6 - }, - "hiddenSeries": false, - "id": 30, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": true, - "total": false, - "values": false + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "Bps" + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "% sec/sec (sda)" + }, + "properties": [ + { + "id": "unit", + "value": "percentunit" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "% sec/sec (sr0)" + }, + "properties": [ + { + "id": "unit", + "value": "percentunit" + } + ] + } + ] }, - "lines": true, - "linewidth": 1, + "gridPos": { + "h": 6, + "w": 6, + "x": 18, + "y": 6 + }, + "id": 30, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "8.3.4", - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [ - { - "alias": "% sec/sec (sda)", - "yaxis": 2 - }, - { - "alias": "% sec/sec (sr0)", - "yaxis": 2 + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "mode": "multi", + "sort": "none" } - ], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + }, + "pluginVersion": "9.1.5", "targets": [ { - "expr": "rate(node_disk_read_bytes_total{node=~\"$node-$site.*\"}[5m])", + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", + "expr": "rate(node_disk_read_bytes_total{node=~\"$node-$site.*\"}[$__rate_interval])", "format": "time_series", "intervalFactor": 1, "legendFormat": "Read ({{device}})", + "range": true, "refId": "A" }, { - "expr": "rate(node_disk_written_bytes_total{node=~\"$node-$site.*\"}[5m])", + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", + "expr": "rate(node_disk_written_bytes_total{node=~\"$node-$site.*\"}[$__rate_interval])", "format": "time_series", "intervalFactor": 1, "legendFormat": "Written ({{device}})", + "range": true, "refId": "B" }, { - "expr": "rate(node_disk_io_time_seconds_total{node=~\"$node-$site.*\"}[5m])", + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", + "expr": "rate(node_disk_io_time_seconds_total{node=~\"$node-$site.*\"}[$__rate_interval])", "format": "time_series", "intervalFactor": 1, "legendFormat": "% sec/sec ({{device}})", + "range": true, "refId": "C" } ], - "thresholds": [], - "timeRegions": [], "title": "Disk I/O", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "Bps", - "logBase": 1, - "min": "0", - "show": true - }, - { - "format": "percentunit", - "logBase": 1, - "min": "0", - "show": true - } - ], - "yaxis": { - "align": false - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, "datasource": { + "type": "prometheus", "uid": "$datasource" }, "fieldConfig": { "defaults": { - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percentunit" }, "overrides": [] }, - "fill": 0, - "fillGradient": 0, "gridPos": { "h": 6, - "w": 6, + "w": 8, "x": 0, "y": 12 }, - "hiddenSeries": false, "id": 15, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": false, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "mode": "multi", + "sort": "desc" + } }, - "percentage": false, - "pluginVersion": "8.3.4", - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "pluginVersion": "9.1.5", "targets": [ { - "expr": "rate(\n container_cpu_usage_seconds_total{\n container_label_io_kubernetes_pod_name=~\"$pod-.*\",\n container_label_io_kubernetes_container_name!=\"POD\",\n container_label_io_kubernetes_pod_namespace=~\"default\",\n machine=~\"$node-$site.*\"\n }\n[5m])", + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", + "expr": "rate(\n container_cpu_usage_seconds_total{\n container_label_io_kubernetes_pod_name=~\"$pod-.*\",\n container_label_io_kubernetes_container_name!=\"POD\",\n container_label_io_kubernetes_pod_namespace=~\"default\",\n machine=~\"$node-$site.*\"\n }\n[$__rate_interval]) > 0.01", "format": "time_series", "intervalFactor": 1, "legendFormat": "{{container_label_io_kubernetes_container_name}} ({{container_label_io_kubernetes_pod_name}})", + "range": true, "refId": "B" } ], - "thresholds": [], - "timeRegions": [], "title": "Pod CPU Usage", - "tooltip": { - "shared": true, - "sort": 2, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "percentunit", - "logBase": 1, - "min": "0", - "show": true - }, - { - "format": "short", - "logBase": 1, - "show": true - } - ], - "yaxis": { - "align": false - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, "datasource": { + "type": "prometheus", "uid": "$datasource" }, "fieldConfig": { "defaults": { - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "decbytes" }, "overrides": [] }, - "fill": 0, - "fillGradient": 0, "gridPos": { "h": 6, - "w": 6, - "x": 6, + "w": 8, + "x": 8, "y": 12 }, - "hiddenSeries": false, "id": 17, - "legend": { - "avg": false, - "current": false, - "hideEmpty": false, - "hideZero": false, - "max": false, - "min": false, - "show": false, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "mode": "multi", + "sort": "desc" + } }, - "percentage": false, - "pluginVersion": "8.3.4", - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "pluginVersion": "9.1.5", "targets": [ { + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", "expr": "container_memory_working_set_bytes{\n container_label_io_kubernetes_pod_name=~\"$pod-.*\",\n container_label_io_kubernetes_container_name!=\"POD\",\n machine=~\"$node-$site.*\"\n}", "format": "time_series", "intervalFactor": 1, "legendFormat": "{{container_label_io_kubernetes_container_name}} ({{container_label_io_kubernetes_pod_name}})", + "range": true, "refId": "A" } ], - "thresholds": [], - "timeRegions": [], "title": "Pod Memory", - "tooltip": { - "shared": true, - "sort": 2, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "decbytes", - "logBase": 1, - "min": "0", - "show": true - }, - { - "format": "short", - "logBase": 1, - "show": true - } - ], - "yaxis": { - "align": false - } + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, "datasource": { + "type": "prometheus", "uid": "$datasource" }, "fieldConfig": { "defaults": { - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bps" }, "overrides": [] }, - "fill": 0, - "fillGradient": 0, "gridPos": { "h": 6, - "w": 12, - "x": 12, + "w": 8, + "x": 16, "y": 12 }, - "hiddenSeries": false, "id": 19, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": false, - "min": false, - "rightSide": true, - "show": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "8.3.4", - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "-8 * rate(\n container_network_receive_bytes_total{\n container_label_io_kubernetes_pod_name=~\"$pod-.*\",\n container_label_io_kubernetes_pod_namespace=\"default\",\n interface=~\"(eth0|net1)\",\n machine=~\"$node-$site.*\"\n }\n[5m])", - "format": "time_series", - "hide": false, - "interval": "", - "intervalFactor": 1, - "legendFormat": "RX {{interface}} ({{container_label_io_kubernetes_pod_name}})", - "refId": "A" - }, - { - "expr": "8 * rate(\n container_network_transmit_bytes_total{\n container_label_io_kubernetes_pod_name=~\"$pod-.*\",\n container_label_io_kubernetes_pod_namespace=\"default\",\n interface=~\"(eth0|net1)\",\n machine=~\"$node-$site.*\"\n }\n[5m])", - "format": "time_series", - "hide": false, - "interval": "", - "intervalFactor": 1, - "legendFormat": "TX {{interface}} ({{container_label_io_kubernetes_pod_name}})", - "refId": "B" - } - ], - "thresholds": [], - "timeRegions": [], - "title": "Pod Network", - "tooltip": { - "shared": true, - "sort": 2, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "bps", - "logBase": 1, - "show": true - }, - { - "format": "short", - "logBase": 1, - "show": true - } - ], - "yaxis": { - "align": false - } - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "datasource": { - "uid": "$datasource" - }, - "fieldConfig": { - "defaults": { - "links": [] - }, - "overrides": [] - }, - "fill": 0, - "fillGradient": 0, - "gridPos": { - "h": 6, - "w": 6, - "x": 0, - "y": 18 - }, - "hiddenSeries": false, - "id": 81, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": false, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", - "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "8.3.4", - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": true, - "steppedLine": false, - "targets": [ - { - "expr": "node_procs_running{machine=~\"$node-$site.*\"}", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": "Running Process", - "refId": "B" - }, - { - "expr": "node_processes_pids{machine=~\"$node-$site.*\"}", - "format": "time_series", - "intervalFactor": 1, - "legendFormat": "Total Procs", - "refId": "A" - } - ], - "thresholds": [], - "timeRegions": [], - "title": "Process Count", - "tooltip": { - "shared": true, - "sort": 2, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "show": true, - "values": [] + "options": { + "legend": { + "calcs": [ + "mean" + ], + "displayMode": "table", + "placement": "right", + "showLegend": false + }, + "tooltip": { + "mode": "multi", + "sort": "desc" + } }, - "yaxes": [ + "pluginVersion": "9.1.5", + "targets": [ { - "format": "short", - "logBase": 1, - "min": "0", - "show": true + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", + "expr": "-8 * rate(\n container_network_receive_bytes_total{\n container_label_io_kubernetes_pod_name=~\"$pod-.*\",\n container_label_io_kubernetes_pod_namespace=\"default\",\n interface=~\"(eth0|net1)\",\n machine=~\"$node-$site.*\"\n }\n[$__rate_interval])", + "format": "time_series", + "hide": false, + "interval": "", + "intervalFactor": 1, + "legendFormat": "RX {{interface}} ({{container_label_io_kubernetes_pod_name}})", + "range": true, + "refId": "A" }, { - "format": "short", - "logBase": 1, - "show": true + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", + "exemplar": false, + "expr": "8 * rate(\n container_network_transmit_bytes_total{\n container_label_io_kubernetes_pod_name=~\"$pod-.*\",\n container_label_io_kubernetes_pod_namespace=\"default\",\n interface=~\"(eth0|net1)\",\n machine=~\"$node-$site.*\"\n }\n[$__rate_interval])", + "format": "time_series", + "hide": false, + "instant": false, + "interval": "", + "intervalFactor": 1, + "legendFormat": "TX {{interface}} ({{container_label_io_kubernetes_pod_name}})", + "range": true, + "refId": "B" } ], - "yaxis": { - "align": false - } + "title": "Pod Network", + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, "datasource": { + "type": "prometheus", "uid": "$datasource" }, "description": "", "fieldConfig": { "defaults": { - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" }, "overrides": [] }, - "fill": 0, - "fillGradient": 0, "gridPos": { "h": 6, - "w": 6, - "x": 6, + "w": 8, + "x": 0, "y": 18 }, - "hiddenSeries": false, "id": 117, "interval": "", - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": false, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "mode": "multi", + "sort": "desc" + } }, - "percentage": false, - "pluginVersion": "8.3.4", - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "pluginVersion": "9.1.5", "targets": [ { - "expr": "go_goroutines{machine=~\"$node-$site.*\", workload=~\"$pod\"}", + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", + "expr": "go_goroutines{machine=~\"$node-$site.*\", deployment=~\"$pod\"}", "format": "time_series", "hide": false, "interval": "", "intervalFactor": 1, - "legendFormat": "{{deployment}} {{container}}", + "legendFormat": "{{container}} ({{pod}})", + "range": true, "refId": "D" } ], - "thresholds": [], - "timeRegions": [], - "title": "$pod $node.$site -- go routine counts", - "tooltip": { - "shared": true, - "sort": 2, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "logBase": 1, - "min": "0", - "show": true - }, - { - "format": "short", - "logBase": 1, - "show": true - } - ], - "yaxis": { - "align": false - } + "title": "Pod Go Routines", + "type": "timeseries" }, { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, "datasource": { + "type": "prometheus", "uid": "$datasource" }, "fieldConfig": { "defaults": { - "links": [] + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "decbytes" }, "overrides": [] }, - "fill": 0, - "fillGradient": 0, "gridPos": { "h": 6, - "w": 12, - "x": 12, + "w": 8, + "x": 8, "y": 18 }, - "hiddenSeries": false, "id": 155, - "legend": { - "alignAsTable": true, - "avg": false, - "current": false, - "hideEmpty": false, - "hideZero": false, - "max": false, - "min": false, - "rightSide": true, - "show": true, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 1, "links": [], - "nullPointMode": "null", "options": { - "alertThreshold": true + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": false + }, + "tooltip": { + "mode": "multi", + "sort": "desc" + } }, - "percentage": false, - "pluginVersion": "8.3.4", - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, + "pluginVersion": "9.1.5", "targets": [ { - "expr": "sum by(container) (process_resident_memory_bytes{\n machine=~\"$node-$site.*\",\n pod=~\".*$pod.*\",\n})", + "datasource": { + "uid": "$datasource" + }, + "editorMode": "code", + "expr": "sum by(container) (process_resident_memory_bytes{\n machine=~\"$node-$site.*\",\n deployment=~\"$pod\",\n})", "format": "time_series", "hide": false, "intervalFactor": 1, - "legendFormat": "{{container}} - RSS", + "legendFormat": "{{container}}", + "range": true, "refId": "F" } ], - "thresholds": [], - "timeRegions": [], - "title": "Go RSS Memory", - "tooltip": { - "shared": true, - "sort": 2, - "value_type": "individual" + "title": "Pod Go RSS Memory", + "type": "timeseries" + }, + { + "datasource": { + "uid": "$datasource" }, - "type": "graph", - "xaxis": { - "mode": "time", - "show": true, - "values": [] + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "normal" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "links": [], + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] }, - "yaxes": [ + "gridPos": { + "h": 6, + "w": 8, + "x": 16, + "y": 18 + }, + "id": 81, + "links": [], + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "tooltip": { + "mode": "multi", + "sort": "desc" + } + }, + "pluginVersion": "9.1.5", + "targets": [ { - "format": "decbytes", - "logBase": 1, - "min": "0", - "show": true + "datasource": { + "uid": "$datasource" + }, + "expr": "node_procs_running{machine=~\"$node-$site.*\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Running Process", + "refId": "B" }, { - "format": "short", - "logBase": 1, - "show": true + "datasource": { + "uid": "$datasource" + }, + "expr": "node_processes_pids{machine=~\"$node-$site.*\"}", + "format": "time_series", + "intervalFactor": 1, + "legendFormat": "Total Procs", + "refId": "A" } ], - "yaxis": { - "align": false - } + "title": "Process Count", + "type": "timeseries" } ], "refresh": false, - "schemaVersion": 34, + "schemaVersion": 37, "style": "dark", "tags": [], "templating": { "list": [ { "current": { - "selected": true, + "selected": false, "text": "Platform Cluster (mlab-oti)", "value": "Platform Cluster (mlab-oti)" }, @@ -2024,7 +2200,7 @@ }, { "current": { - "selected": true, + "selected": false, "text": "Prometheus (mlab-oti)", "value": "Prometheus (mlab-oti)" }, @@ -2136,9 +2312,9 @@ "useTags": false }, { - "allValue": ".*", + "allValue": ".+", "current": { - "selected": false, + "selected": true, "text": "All", "value": "$__all" }, @@ -2146,7 +2322,7 @@ "type": "prometheus", "uid": "$datasource" }, - "definition": "label_values(label_workload)", + "definition": "label_values(workload)", "hide": 0, "includeAll": true, "label": "Pod", @@ -2154,8 +2330,8 @@ "name": "pod", "options": [], "query": { - "query": "label_values(label_workload)", - "refId": "Platform Cluster (mlab-oti)-pod-Variable-Query" + "query": "label_values(workload)", + "refId": "StandardVariableQuery" }, "refresh": 1, "regex": "", @@ -2200,6 +2376,6 @@ "timezone": "", "title": "k8s: Site Overview", "uid": "rJ7z2Suik", - "version": 57, + "version": 59, "weekStart": "" } diff --git a/config/federation/grafana/dashboards/K8s_SiteOverviewTerse.json b/config/federation/grafana/dashboards/K8s_SiteOverviewTerse.json index 632ca0c0..5b1543c5 100644 --- a/config/federation/grafana/dashboards/K8s_SiteOverviewTerse.json +++ b/config/federation/grafana/dashboards/K8s_SiteOverviewTerse.json @@ -61,6 +61,7 @@ "type": "prometheus", "uid": "${datasource}" }, + "description": "Average sec/sec usage across all CPUs available to all the machines at the selected site.", "fieldConfig": { "defaults": { "color": { @@ -112,7 +113,7 @@ } ] }, - "unit": "none" + "unit": "percentunit" }, "overrides": [ { @@ -149,7 +150,7 @@ "showLegend": false }, "tooltip": { - "mode": "single", + "mode": "multi", "sort": "none" } }, @@ -160,16 +161,18 @@ "type": "prometheus", "uid": "${datasource}" }, + "editorMode": "code", "exemplar": true, - "expr": "avg by (site) (node_load1{site=\"$site\"})", + "expr": "1 - avg by (site) (rate(node_cpu_seconds_total{site=\"$site\", mode=\"idle\"}[$__rate_interval]))", "format": "time_series", "interval": "", "intervalFactor": 1, "legendFormat": "{{site}}", + "range": true, "refId": "A" } ], - "title": "Load average (1 min)", + "title": "CPU", "type": "timeseries" }, { @@ -247,7 +250,7 @@ "calcs": [], "displayMode": "list", "placement": "bottom", - "showLegend": true + "showLegend": false }, "tooltip": { "mode": "multi", @@ -261,13 +264,15 @@ "type": "prometheus", "uid": "${datasource}" }, + "editorMode": "code", "exemplar": true, - "expr": "avg by (site) (node_memory_Cached_bytes{site=\"$site\"})", + "expr": "avg by (site) (\n node_memory_Cached_bytes{site=\"$site\"}\n + node_memory_Buffers_bytes\n + node_memory_SReclaimable_bytes\n)", "format": "time_series", "hide": false, "interval": "", "intervalFactor": 1, - "legendFormat": "Cache", + "legendFormat": "Buff/Cache", + "range": true, "refId": "A" }, { @@ -275,27 +280,16 @@ "type": "prometheus", "uid": "${datasource}" }, + "editorMode": "code", "exemplar": true, - "expr": "avg by (site) (node_memory_Buffers_bytes{site=\"$site\"})", + "expr": "avg by (site) (\n node_memory_Active_bytes{site=\"$site\"}\n + node_memory_Active_anon_bytes\n + node_memory_Active_file_bytes\n)", "format": "time_series", "interval": "", "intervalFactor": 1, - "legendFormat": "Buffers", + "legendFormat": "Used", + "range": true, "refId": "B" }, - { - "datasource": { - "type": "prometheus", - "uid": "${datasource}" - }, - "exemplar": true, - "expr": "avg by (site) (node_memory_Active_bytes{site=\"$site\"})", - "format": "time_series", - "interval": "", - "intervalFactor": 1, - "legendFormat": "Active", - "refId": "D" - }, { "datasource": { "type": "prometheus", @@ -304,6 +298,7 @@ "exemplar": true, "expr": "avg by (site) (node_memory_MemFree_bytes{site=\"$site\"})", "format": "time_series", + "hide": false, "interval": "", "intervalFactor": 1, "legendFormat": "Free", @@ -385,7 +380,7 @@ "calcs": [], "displayMode": "list", "placement": "bottom", - "showLegend": true + "showLegend": false }, "tooltip": { "mode": "multi", @@ -532,7 +527,7 @@ "calcs": [], "displayMode": "list", "placement": "bottom", - "showLegend": true + "showLegend": false }, "tooltip": { "mode": "multi", @@ -640,7 +635,7 @@ "calcs": [], "displayMode": "list", "placement": "bottom", - "showLegend": true + "showLegend": false }, "tooltip": { "mode": "multi", @@ -815,6 +810,6 @@ "timezone": "", "title": "k8s: Site Overview Terse", "uid": "082q1knVz", - "version": 17, + "version": 19, "weekStart": "" -} \ No newline at end of file +}