diff --git a/dashboards/Experimental/Kubernetes_Cluster_Summary.json b/dashboards/Kubernetes (experimental)/Kubernetes_Cluster_Summary.json similarity index 100% rename from dashboards/Experimental/Kubernetes_Cluster_Summary.json rename to dashboards/Kubernetes (experimental)/Kubernetes_Cluster_Summary.json diff --git a/dashboards/Kubernetes (experimental)/Kubernetes_DB_Cluster.json b/dashboards/Kubernetes (experimental)/Kubernetes_DB_Cluster.json new file mode 100644 index 0000000000..dd1dac4610 --- /dev/null +++ b/dashboards/Kubernetes (experimental)/Kubernetes_DB_Cluster.json @@ -0,0 +1,2650 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "datasource", + "uid": "grafana" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "target": { + "limit": 100, + "matchAny": false, + "tags": [], + "type": "dashboard" + }, + "type": "dashboard" + } + ] + }, + "description": "Dashboard for DB Clusters managed with Percona Kubernetes Operators", + "editable": true, + "fiscalYearStartMonth": 0, + "gnetId": 15760, + "graphTooltip": 1, + "id": 78, + "links": [], + "liveNow": false, + "panels": [ + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 90, + "panels": [], + "title": "Status", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "fixed" + }, + "custom": { + "fillOpacity": 100, + "lineWidth": 0, + "spanNulls": false + }, + "mappings": [ + { + "options": { + "error": { + "color": "red", + "index": 2 + }, + "null": { + "index": 1, + "text": "N/A" + } + }, + "type": "value" + }, + { + "options": { + "from": 0, + "result": { + "index": 0, + "text": "N/A" + }, + "to": 0 + }, + "type": "range" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "none" + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "ready" + }, + "properties": [ + { + "id": "color", + "value": { + "mode": "continuous-GrYlRd" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "error" + }, + "properties": [ + { + "id": "color", + "value": { + "mode": "continuous-RdYlGr" + } + } + ] + } + ] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 1 + }, + "id": 97, + "options": { + "alignValue": "center", + "legend": { + "displayMode": "list", + "placement": "bottom", + "showLegend": false + }, + "mergeValues": true, + "rowHeight": 0.89, + "showValue": "never", + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "(kube_pxc_status_state{k8s_cluster_id=\"${k8s_cluster}\",namespace=\"${namespace}\",name=\"${k8s_db_cr}\"} if \"${k8s_db_type}\"==\"percona-xtradb-cluster-operator\") !=0", + "format": "time_series", + "hide": false, + "legendFormat": "{{state}}", + "range": true, + "refId": "PXC_Status" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "(kube_psmdb_status_state{k8s_cluster_id=\"${k8s_cluster}\",namespace=\"${namespace}\",name=\"${k8s_db_cr}\"} if \"${k8s_db_type}\"==\"percona-server-mongodb-operator\") !=0\n", + "format": "time_series", + "hide": false, + "legendFormat": "{{state}}", + "range": true, + "refId": "PSMDB_Status" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "(kube_pg_status_state{k8s_cluster_id=\"${k8s_cluster}\",namespace=\"${namespace}\",name=\"${k8s_db_cr}\"} if \"${k8s_db_type}\"==\"percona-postgresql-operator\") !=0\n", + "format": "time_series", + "hide": false, + "legendFormat": "{{state}}", + "range": true, + "refId": "PG_Status" + } + ], + "title": "Cluster Status", + "transformations": [], + "type": "state-timeline" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "align": "auto", + "displayMode": "auto", + "inspect": false + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 1 + }, + "id": 99, + "options": { + "footer": { + "fields": "", + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": false, + "expr": "kube_pxc_backup_status_state", + "format": "table", + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "PXC_Backup" + } + ], + "title": "Backup Status", + "type": "table" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 9 + }, + "id": 60, + "panels": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "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": 4, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "none" + }, + "overrides": [ + { + "__systemRef": "hideSeriesFrom", + "matcher": { + "id": "byNames", + "options": { + "mode": "exclude", + "names": [ + "cluster1-haproxy-0 ( haproxy )" + ], + "prefix": "All except:", + "readOnly": true + } + }, + "properties": [ + { + "id": "custom.hideFrom", + "value": { + "legend": false, + "tooltip": false, + "viz": true + } + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 2 + }, + "id": 80, + "interval": "1s", + "maxDataPoints": 1000, + "options": { + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "8.3.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(rate(container_cpu_usage_seconds_total{k8s_cluster_id=\"${k8s_cluster}\",namespace=\"$namespace\", pod=~\"$k8s_db_pods\",container!~\"logs|logrotate\", image!=\"\",container!=\"\"}[$__rate_interval])) by (container,pod)", + "hide": false, + "legendFormat": "{{pod}} ( {{container}} )", + "range": true, + "refId": "CPU Used" + } + ], + "title": "CPU Stats", + "transformations": [ + { + "id": "filterByValue", + "options": { + "filters": [], + "match": "any", + "type": "include" + } + } + ], + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "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": "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": [ + { + "__systemRef": "hideSeriesFrom", + "matcher": { + "id": "byNames", + "options": { + "mode": "exclude", + "names": [ + "cluster1-haproxy-0 ( haproxy )" + ], + "prefix": "All except:", + "readOnly": true + } + }, + "properties": [ + { + "id": "custom.hideFrom", + "value": { + "legend": false, + "tooltip": false, + "viz": true + } + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 2 + }, + "id": 57, + "interval": "1s", + "maxDataPoints": 1000, + "options": { + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "8.3.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(container_memory_working_set_bytes{k8s_cluster_id=\"${k8s_cluster}\",namespace=\"$namespace\", pod=~\"$k8s_db_pods\",container!=\"\",container!~\"logs|logrotate\"}) by (container,pod)", + "hide": false, + "legendFormat": "{{pod}} ( {{container}} )", + "range": true, + "refId": "Memory Used" + } + ], + "title": "Memory Stats", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "align": "auto", + "displayMode": "auto", + "inspect": false + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Value #CPU Requests" + }, + "properties": [ + { + "id": "unit", + "value": "none" + }, + { + "id": "displayName", + "value": "CPU Requests" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #CPU Limits" + }, + "properties": [ + { + "id": "unit", + "value": "none" + }, + { + "id": "displayName", + "value": "CPU Limits" + }, + { + "id": "custom.align", + "value": "left" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #Memory Requests" + }, + "properties": [ + { + "id": "displayName", + "value": "Memory Requests" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #Memory Limits" + }, + "properties": [ + { + "id": "displayName", + "value": "Memory Limits" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Time" + }, + "properties": [ + { + "id": "custom.hidden", + "value": true + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "pod" + }, + "properties": [ + { + "id": "displayName", + "value": "Pod" + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 24, + "x": 0, + "y": 9 + }, + "id": 85, + "interval": "1s", + "maxDataPoints": 1000, + "options": { + "footer": { + "fields": "", + "reducer": [ + "sum" + ], + "show": false + }, + "frameIndex": 4, + "showHeader": true, + "sortBy": [ + { + "desc": false, + "displayName": "CPU Limits" + } + ] + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": false, + "expr": "sum(kube_pod_container_resource_requests{k8s_cluster_id=\"${k8s_cluster}\",namespace=\"$namespace\", pod=~\"$k8s_db_pods\", unit=\"byte\"}) by (container,pod)", + "format": "table", + "hide": false, + "instant": true, + "interval": "", + "legendFormat": "__auto", + "range": false, + "refId": "Memory Requests" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": false, + "expr": "sum(kube_pod_container_resource_limits{namespace=\"$namespace\", pod=~\"$k8s_db_pods\", unit=\"byte\"}) by (container,pod)", + "format": "table", + "hide": false, + "instant": true, + "legendFormat": "Memory Limits", + "range": false, + "refId": "Memory Limits" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": false, + "expr": "sum(kube_pod_container_resource_requests{namespace=\"$namespace\", pod=~\"$k8s_db_pods\", unit=\"core\",container!=\"\"}) by (container,pod) ", + "format": "table", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "CPU Requests" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": false, + "expr": "sum(kube_pod_container_resource_limits{namespace=\"$namespace\", pod=~\"$k8s_db_pods\", unit=\"core\",container!=\"\"}) by (container,pod) ", + "format": "table", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "CPU Limits" + } + ], + "title": "Requests and Limits", + "transformations": [ + { + "id": "merge", + "options": {} + }, + { + "id": "filterByValue", + "options": { + "filters": [ + { + "config": { + "id": "equal", + "options": { + "value": "logs" + } + }, + "fieldName": "container" + }, + { + "config": { + "id": "equal", + "options": { + "value": "logrotate" + } + }, + "fieldName": "container" + } + ], + "match": "any", + "type": "exclude" + } + } + ], + "type": "table" + } + ], + "title": "CPU and Memory", + "type": "row" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 10 + }, + "id": 71, + "panels": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "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": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "none" + }, + "overrides": [ + { + "__systemRef": "hideSeriesFrom", + "matcher": { + "id": "byNames", + "options": { + "mode": "exclude", + "names": [ + "cluster1-haproxy-0 ( pxc-monit )" + ], + "prefix": "All except:", + "readOnly": true + } + }, + "properties": [ + { + "id": "custom.hideFrom", + "value": { + "legend": false, + "tooltip": false, + "viz": true + } + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 3 + }, + "id": 73, + "options": { + "legend": { + "calcs": [ + "last" + ], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "desc" + } + }, + "pluginVersion": "9.2.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": false, + "expr": "kube_pod_container_status_restarts_total{k8s_cluster_id=\"${k8s_cluster}\",namespace=~\"${namespace}\",pod=~\"$k8s_db_pods\",container!~\"logs|logrotate\"} and on (pod) kube_pod_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"}", + "instant": false, + "interval": "", + "legendFormat": "{{pod}} ( {{container}} )", + "range": true, + "refId": "A" + } + ], + "title": "Container restarts", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "axisSoftMin": 0, + "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" + } + }, + "mappings": [ + { + "options": { + "1": { + "index": 0, + "text": "ContainerCannotRun" + }, + "2": { + "index": 1, + "text": "OOM Killed" + }, + "3": { + "index": 2, + "text": "Completed" + }, + "4": { + "index": 3, + "text": "Error" + } + }, + "type": "value" + } + ], + "max": 4, + "min": 1, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "string" + }, + "overrides": [] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 3 + }, + "id": 74, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "desc" + } + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": false, + "expr": "kube_pod_container_status_last_terminated_reason{k8s_cluster_id=\"${k8s_cluster}\",namespace=\"${namespace}\",reason=\"ContainerCannotRun\"} and on (pod) kube_pod_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"}", + "format": "table", + "hide": false, + "instant": true, + "interval": "", + "legendFormat": "{{pod}} ( {{container}} )", + "range": false, + "refId": "ContainerCannotRun" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "(kube_pod_container_status_last_terminated_reason{namespace=\"${namespace}\" ,reason=\"OOMKilled\"} and on (pod) kube_pod_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"})+1", + "hide": false, + "instant": false, + "interval": "", + "legendFormat": "{{pod}} ( {{container}} )", + "refId": "OOMKilled" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "(kube_pod_container_status_last_terminated_reason{namespace=\"${namespace}\" ,reason=\"Completed\"} and on (pod) kube_pod_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"})+2", + "hide": false, + "instant": false, + "interval": "", + "legendFormat": "{{pod}} ( {{container}} )", + "refId": "Completed" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "(kube_pod_container_status_last_terminated_reason{namespace=\"${namespace}\" ,reason=\"Error\"} and on (pod) kube_pod_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"})+3", + "hide": false, + "instant": false, + "interval": "", + "legendFormat": "{{pod}} ( {{container}} )", + "refId": "Error" + } + ], + "title": "Last Terminated Reason", + "transformations": [], + "type": "timeseries" + } + ], + "title": "Error Details", + "type": "row" + }, + { + "collapsed": true, + "datasource": { + "type": "datasource", + "uid": "grafana" + }, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 11 + }, + "id": 47, + "panels": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "align": "left", + "displayMode": "auto", + "filterable": true, + "inspect": false + }, + "decimals": 2, + "displayName": "", + "mappings": [ + { + "options": { + "Bound": { + "color": "dark-green", + "index": 0 + }, + "Lost": { + "color": "red", + "index": 1 + }, + "Pending": { + "color": "orange", + "index": 2 + } + }, + "type": "value" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "short" + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Time" + }, + "properties": [ + { + "id": "custom.width", + "value": 175 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "namespace" + }, + "properties": [ + { + "id": "custom.width", + "value": 133 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "persistentvolumeclaim" + }, + "properties": [ + { + "id": "custom.width", + "value": 225 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "storageclass" + }, + "properties": [ + { + "id": "custom.width", + "value": 162 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "volumename" + }, + "properties": [ + { + "id": "custom.width", + "value": 190 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #B" + }, + "properties": [ + { + "id": "unit", + "value": "decbytes" + }, + { + "id": "displayName", + "value": "Capacity" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Capacity" + }, + "properties": [ + { + "id": "custom.width", + "value": 169 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "phase" + }, + "properties": [ + { + "id": "custom.width", + "value": 157 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "phase" + }, + "properties": [ + { + "id": "custom.displayMode", + "value": "color-background-solid" + } + ] + } + ] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 4 + }, + "id": 88, + "links": [], + "options": { + "footer": { + "enablePagination": false, + "fields": "", + "reducer": [ + "sum" + ], + "show": false + }, + "frameIndex": 0, + "showHeader": true, + "sortBy": [] + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "uid": "$DS_OPENSHIFT_PROMETHEUS" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_keep((kube_persistentvolumeclaim_info and on (persistentvolumeclaim) kube_persistentvolumeclaim_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"}),\"persistentvolumeclaim\",\"storageclass\")", + "format": "table", + "hide": false, + "instant": true, + "range": false, + "refId": "E" + }, + { + "datasource": { + "uid": "$DS_OPENSHIFT_PROMETHEUS" + }, + "editorMode": "code", + "expr": "max by (persistentvolumeclaim,namespace) (kubelet_volume_stats_capacity_bytes{namespace=~\"${namespace}\"} and on (persistentvolumeclaim) kube_persistentvolumeclaim_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"},\"namespace\")", + "format": "table", + "hide": false, + "instant": true, + "refId": "B" + }, + { + "datasource": { + "uid": "$DS_OPENSHIFT_PROMETHEUS" + }, + "editorMode": "code", + "exemplar": false, + "expr": "label_keep(kube_persistentvolumeclaim_status_phase{namespace=~\"${namespace}\"} and on (persistentvolumeclaim) kube_persistentvolumeclaim_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"},\"persistentvolumeclaim\",\"phase\") !=0", + "format": "table", + "hide": false, + "instant": true, + "legendFormat": "{{Status}}", + "range": false, + "refId": "Status" + } + ], + "title": "PVC Stats", + "transformations": [ + { + "id": "joinByField", + "options": { + "byField": "persistentvolumeclaim", + "mode": "inner" + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "Time 1": true, + "Time 2": true, + "Time 3": true, + "Value #E": true, + "Value #Status": true, + "namespace": true + }, + "indexByName": {}, + "renameByName": {} + } + } + ], + "type": "table" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "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": "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": 4 + }, + "id": 62, + "options": { + "legend": { + "calcs": [ + "last" + ], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "desc" + } + }, + "pluginVersion": "9.2.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "kubelet_volume_stats_used_bytes{k8s_cluster_id=\"${k8s_cluster}\",namespace=~\"${namespace}\"} and on (persistentvolumeclaim) kube_persistentvolumeclaim_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"}", + "instant": false, + "interval": "", + "legendFormat": "{{persistentvolumeclaim}}", + "refId": "A" + } + ], + "title": "Volume Used", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "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": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "decimals": 4, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "none" + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 12 + }, + "id": 64, + "options": { + "legend": { + "calcs": [ + "last" + ], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "desc" + } + }, + "pluginVersion": "9.2.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "100 * (sum(kubelet_volume_stats_used_bytes{k8s_cluster_id=\"${k8s_cluster}\",namespace=~\"${namespace}\"}) by (persistentvolumeclaim) and on (persistentvolumeclaim) kube_persistentvolumeclaim_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"})\n/ (sum(kubelet_volume_stats_capacity_bytes{k8s_cluster_id=\"${k8s_cluster}\",namespace=~\"${namespace}\"}) by (persistentvolumeclaim) and on (persistentvolumeclaim) kube_persistentvolumeclaim_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"})", + "instant": false, + "interval": "", + "legendFormat": "{{persistentvolumeclaim}}", + "refId": "A" + } + ], + "title": "Volume Used %", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "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": "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": 12 + }, + "id": 68, + "options": { + "legend": { + "calcs": [ + "mean" + ], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "desc" + } + }, + "pluginVersion": "9.2.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "rate(kubelet_volume_stats_used_bytes{k8s_cluster_id=\"${k8s_cluster}\",namespace=~\"${namespace}\"} and on (persistentvolumeclaim) kube_persistentvolumeclaim_labels{label_app_kubernetes_io_managed_by=\"${k8s_db_type}\",label_app_kubernetes_io_instance=\"${k8s_db_cr}\"}[60s])", + "instant": false, + "interval": "", + "legendFormat": "{{persistentvolumeclaim}}", + "refId": "A" + } + ], + "title": "Volume Usage Rate /min", + "type": "timeseries" + } + ], + "targets": [ + { + "datasource": { + "type": "datasource", + "uid": "grafana" + }, + "refId": "A" + } + ], + "title": "Volumes", + "type": "row" + }, + { + "collapsed": true, + "datasource": { + "type": "datasource", + "uid": "grafana" + }, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 12 + }, + "id": 45, + "panels": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 14, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "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": 7, + "w": 12, + "x": 0, + "y": 5 + }, + "id": 31, + "options": { + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "8.3.3", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": true, + "expr": "sum(rate(container_network_receive_bytes_total{k8s_cluster_id=\"${k8s_cluster}\",namespace=\"$namespace\", pod=~\"$k8s_db_pods\"}[$__rate_interval])) by (pod)", + "interval": "", + "legendFormat": "{{pod}}(Recieved)", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": true, + "expr": "- sum(rate(container_network_transmit_bytes_total{namespace=\"$namespace\", pod=~\"$k8s_db_pods\"}[$__rate_interval])) by (pod)", + "interval": "", + "legendFormat": "{{pod}}(Transmitted)", + "range": true, + "refId": "B" + } + ], + "title": "Network - Bandwidth", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 25, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "pps" + }, + "overrides": [] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 5 + }, + "id": 34, + "options": { + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "8.3.3", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": true, + "expr": "sum(rate(container_network_receive_packets_total{k8s_cluster_id=\"${k8s_cluster}\",namespace=\"$namespace\", pod=~\"$k8s_db_pods\"}[$__rate_interval])) by (pod)", + "interval": "", + "legendFormat": "{{pod}} (Received )", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": true, + "expr": "- sum(rate(container_network_transmit_packets_total{namespace=\"$namespace\", pod=~\"$k8s_db_pods\"}[$__rate_interval])) by (pod)", + "interval": "", + "legendFormat": "{{pod}} {Transmitted)", + "range": true, + "refId": "B" + } + ], + "title": "Network - Packets", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 25, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "pps" + }, + "overrides": [ + { + "__systemRef": "hideSeriesFrom", + "matcher": { + "id": "byNames", + "options": { + "mode": "exclude", + "names": [ + "cluster1-haproxy-0(Received)" + ], + "prefix": "All except:", + "readOnly": true + } + }, + "properties": [ + { + "id": "custom.hideFrom", + "value": { + "legend": false, + "tooltip": false, + "viz": true + } + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 0, + "y": 12 + }, + "id": 36, + "options": { + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "8.3.3", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": true, + "expr": "sum(rate(container_network_receive_packets_dropped_total{k8s_cluster_id=\"${k8s_cluster}\",namespace=\"$namespace\", pod=~\"$k8s_db_pods\"}[$__rate_interval])) by (pod)", + "interval": "", + "legendFormat": "{{pod}}(Received)", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": true, + "expr": "- sum(rate(container_network_transmit_packets_dropped_total{namespace=\"$namespace\", pod=~\"$k8s_db_pods\"}[$__rate_interval])) by (pod)", + "interval": "", + "legendFormat": "{{pod}}(Transmitted)", + "range": true, + "refId": "B" + } + ], + "title": "Network - Packets Dropped", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 25, + "gradientMode": "opacity", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "lineInterpolation": "smooth", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "pps" + }, + "overrides": [ + { + "__systemRef": "hideSeriesFrom", + "matcher": { + "id": "byNames", + "options": { + "mode": "exclude", + "names": [ + "cluster1-haproxy-0(Received)" + ], + "prefix": "All except:", + "readOnly": true + } + }, + "properties": [ + { + "id": "custom.hideFrom", + "value": { + "legend": false, + "tooltip": false, + "viz": true + } + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 12 + }, + "id": 37, + "options": { + "legend": { + "calcs": [], + "displayMode": "table", + "placement": "right", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "pluginVersion": "8.3.3", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": true, + "expr": "sum(rate(container_network_receive_errors_total{k8s_cluster_id=\"${k8s_cluster}\",namespace=\"$namespace\", pod=~\"$k8s_db_pods\"}[$__rate_interval])) by (pod)", + "interval": "", + "legendFormat": "{{pod}}(Received)", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": true, + "expr": "- sum(rate(container_network_transmit_errors_total{namespace=\"$namespace\", pod=~\"$k8s_db_pods\"}[$__rate_interval])) by (pod)", + "interval": "", + "legendFormat": "{{pod}}(Transmitted)", + "range": true, + "refId": "B" + } + ], + "title": "Network - Errors", + "type": "timeseries" + } + ], + "targets": [ + { + "datasource": { + "type": "datasource", + "uid": "grafana" + }, + "refId": "A" + } + ], + "title": "Network", + "type": "row" + }, + { + "collapsed": false, + "datasource": { + "type": "datasource", + "uid": "grafana" + }, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 13 + }, + "id": 43, + "panels": [], + "targets": [ + { + "datasource": { + "type": "datasource", + "uid": "grafana" + }, + "refId": "A" + } + ], + "title": "Information", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 2, + "w": 12, + "x": 0, + "y": 14 + }, + "id": 33, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "vertical", + "reduceOptions": { + "calcs": [ + "mean" + ], + "fields": "", + "values": false + }, + "text": {}, + "textMode": "name" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "kube_pod_info{namespace=\"$namespace\", pod=~\"$k8s_db_pods\"}", + "instant": true, + "interval": "", + "legendFormat": "{{ node }}", + "range": false, + "refId": "A" + } + ], + "title": "Node", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 2, + "w": 12, + "x": 12, + "y": 14 + }, + "id": 58, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "vertical", + "reduceOptions": { + "calcs": [ + "mean" + ], + "fields": "", + "values": false + }, + "text": {}, + "textMode": "name" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "kube_pod_info{namespace=\"$namespace\", pod=\"$k8s_db_pods\"}", + "instant": true, + "interval": "", + "legendFormat": "{{ host_ip }}", + "range": false, + "refId": "A" + } + ], + "title": "Node IP", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "rgb(255, 255, 255)", + "value": null + } + ] + }, + "unit": "none" + }, + "overrides": [] + }, + "gridPos": { + "h": 2, + "w": 12, + "x": 0, + "y": 16 + }, + "id": 41, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "mean" + ], + "fields": "", + "values": false + }, + "textMode": "name" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "kube_pod_info{namespace=\"$namespace\", pod=\"$k8s_db_pods\"}", + "interval": "", + "legendFormat": "{{ pod_ip }}", + "range": true, + "refId": "A" + } + ], + "title": "Pod IP", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "rgb(255, 255, 255)", + "value": null + } + ] + }, + "unit": "none" + }, + "overrides": [] + }, + "gridPos": { + "h": 2, + "w": 12, + "x": 12, + "y": 16 + }, + "id": 2, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "mean" + ], + "fields": "", + "values": false + }, + "textMode": "name" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": true, + "expr": "kube_pod_info{namespace=\"$namespace\", pod=\"$k8s_db_pods\"}", + "interval": "", + "legendFormat": "{{ created_by_kind }}: {{ created_by_name }}", + "range": true, + "refId": "A" + } + ], + "title": "Created by", + "type": "stat" + } + ], + "refresh": false, + "schemaVersion": 37, + "style": "dark", + "tags": [ + "Percona", + "Operators", + "Kubernetes" + ], + "templating": { + "list": [ + { + "current": { + "selected": false, + "text": "default", + "value": "default" + }, + "hide": 0, + "includeAll": false, + "multi": false, + "name": "datasource", + "options": [], + "query": "prometheus", + "queryValue": "", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "type": "datasource" + }, + { + "current": { + "selected": false, + "text": "chetan", + "value": "chetan" + }, + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "definition": "label_values(container_cpu_system_seconds_total,k8s_cluster_id)", + "hide": 0, + "includeAll": false, + "label": "K8s Cluster", + "multi": false, + "name": "k8s_cluster", + "options": [], + "query": { + "query": "label_values(container_cpu_system_seconds_total,k8s_cluster_id)", + "refId": "StandardVariableQuery" + }, + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query" + }, + { + "current": { + "selected": false, + "text": "pxc", + "value": "pxc" + }, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(kube_pod_info, namespace)", + "hide": 0, + "includeAll": false, + "multi": false, + "name": "namespace", + "options": [], + "query": { + "query": "label_values(kube_pod_info, namespace)", + "refId": "StandardVariableQuery" + }, + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "sort": 1, + "tagValuesQuery": "", + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "current": { + "selected": false, + "text": "PXC", + "value": "percona-xtradb-cluster-operator" + }, + "hide": 0, + "includeAll": false, + "label": "Database Type", + "multi": false, + "name": "k8s_db_type", + "options": [ + { + "selected": true, + "text": "PXC", + "value": "percona-xtradb-cluster-operator" + }, + { + "selected": false, + "text": "PSMDB", + "value": "percona-server-mongodb-operator" + }, + { + "selected": false, + "text": "PG", + "value": "percona-postgresql-operator" + }, + { + "selected": false, + "text": "PS", + "value": "percona-server-mysql-operator" + } + ], + "query": "PXC : percona-xtradb-cluster-operator, PSMDB : percona-server-mongodb-operator,PG : percona-postgresql-operator,PS : percona-server-mysql-operator", + "queryValue": "", + "skipUrlSync": false, + "type": "custom" + }, + { + "current": { + "selected": false, + "text": "cluster1", + "value": "cluster1" + }, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(kube_pod_labels{label_app_kubernetes_io_managed_by=\"$k8s_db_type\",namespace=\"$namespace\"},label_app_kubernetes_io_instance)", + "hide": 0, + "includeAll": false, + "label": "Database Name", + "multi": false, + "name": "k8s_db_cr", + "options": [], + "query": { + "query": "label_values(kube_pod_labels{label_app_kubernetes_io_managed_by=\"$k8s_db_type\",namespace=\"$namespace\"},label_app_kubernetes_io_instance)", + "refId": "StandardVariableQuery" + }, + "refresh": 2, + "regex": "", + "skipUrlSync": false, + "sort": 1, + "tagValuesQuery": "", + "tagsQuery": "", + "type": "query", + "useTags": false + }, + { + "allValue": ".*", + "current": { + "selected": true, + "text": [ + "cluster1-haproxy-0" + ], + "value": [ + "cluster1-haproxy-0" + ] + }, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(kube_pod_labels{namespace=\"$namespace\",label_app_kubernetes_io_managed_by=\"$k8s_db_type\",label_app_kubernetes_io_instance=\"$k8s_db_cr\"}, pod)", + "hide": 0, + "includeAll": false, + "label": "DB Pods", + "multi": true, + "name": "k8s_db_pods", + "options": [], + "query": { + "query": "label_values(kube_pod_labels{namespace=\"$namespace\",label_app_kubernetes_io_managed_by=\"$k8s_db_type\",label_app_kubernetes_io_instance=\"$k8s_db_cr\"}, pod)", + "refId": "StandardVariableQuery" + }, + "refresh": 2, + "regex": "", + "skipUrlSync": false, + "sort": 1, + "tagValuesQuery": "", + "tagsQuery": "", + "type": "query", + "useTags": false + } + ] + }, + "time": { + "from": "now-6h", + "to": "now" + }, + "timepicker": {}, + "timezone": "", + "title": "Database Cluster on K8s Summary", + "uid": "WzwxIOTVz", + "version": 45, + "weekStart": "" +} diff --git a/dashboards/Kubernetes (experimental)/Kubernetes_Overview.json b/dashboards/Kubernetes (experimental)/Kubernetes_Overview.json new file mode 100644 index 0000000000..b146030f17 --- /dev/null +++ b/dashboards/Kubernetes (experimental)/Kubernetes_Overview.json @@ -0,0 +1,2552 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "datasource", + "uid": "grafana" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "target": { + "limit": 100, + "matchAny": false, + "tags": [], + "type": "dashboard" + }, + "type": "dashboard" + } + ] + }, + "description": "Kubernetes Cluster Overview - provides insignts into k8s health and its objects, including Percona Custom Resources", + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "id": 68, + "links": [], + "liveNow": false, + "panels": [ + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 27, + "panels": [], + "title": "Overview", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The total number of nodes", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "text", + "value": null + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 0, + "y": 1 + }, + "id": 25, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "count(kube_node_info{k8s_cluster_id=\"$k8s_cluster\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "Total nodes", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The total number of nodes that are not in Ready state", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "yellow", + "value": 1 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 2, + "y": 1 + }, + "id": 28, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_node_status_condition{k8s_cluster_id=\"$k8s_cluster\",condition!=\"Ready\",status=\"true\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "Not Ready Nodes", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The total number of Pods in the cluster", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "text", + "value": null + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 4, + "y": 1 + }, + "id": 29, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_status_phase{k8s_cluster_id=\"$k8s_cluster\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "Total Pods", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The total number of Pods not in the Running Status", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "#EAB839", + "value": 1 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 6, + "y": 1 + }, + "id": 30, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_status_phase{k8s_cluster_id=\"$k8s_cluster\",phase!=\"Running\",phase!=\"Succeeded\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "Not Running Pods", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "Total CPU (cores) capacity of the Kubernetes cluster", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "text", + "value": null + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 8, + "y": 1 + }, + "id": 31, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_node_status_capacity{k8s_cluster_id=\"$k8s_cluster\",resource=\"cpu\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "CPU capacity", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "How many CPU cores were requested by Containers", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "text", + "value": null + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 10, + "y": 1 + }, + "id": 33, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_container_resource_requests{k8s_cluster_id=\"$k8s_cluster\",resource=\"cpu\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "CPU requests", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "Percentage showing the requested CPU cores or used CPU cluster capacity", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "#EAB839", + "value": 0.7 + }, + { + "color": "red", + "value": 0.9 + } + ] + }, + "unit": "percentunit" + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 12, + "y": 1 + }, + "id": 32, + "options": { + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showThresholdLabels": false, + "showThresholdMarkers": false + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_container_resource_requests{k8s_cluster_id=\"$k8s_cluster\",resource=\"cpu\"}) / sum(kube_node_status_capacity{k8s_cluster_id=\"$k8s_cluster\",resource=\"cpu\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "CPU requests %", + "type": "gauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The sum of CPU (cores) limits for all containers in the cluster", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "text", + "value": null + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 14, + "y": 1 + }, + "id": 47, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_container_resource_limits{k8s_cluster_id=\"$k8s_cluster\",resource=\"cpu\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "CPU limits", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "Total Memory (RAM) capacity of the Kubernetes cluster", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "decbytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 16, + "y": 1 + }, + "id": 34, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_node_status_capacity{k8s_cluster_id=\"$k8s_cluster\",resource=\"memory\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "Memory capacity", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "How many Memory (RAM) bytes were requested by Containers", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "decbytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 18, + "y": 1 + }, + "id": 35, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_container_resource_requests{k8s_cluster_id=\"$k8s_cluster\",resource=\"memory\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "Memory requests", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "Percentage showing the requested Memory or used Memory cluster capacity", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "#EAB839", + "value": 0.7 + }, + { + "color": "red", + "value": 0.9 + } + ] + }, + "unit": "percentunit" + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 20, + "y": 1 + }, + "id": 36, + "options": { + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showThresholdLabels": false, + "showThresholdMarkers": false + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_container_resource_requests{k8s_cluster_id=\"$k8s_cluster\",resource=\"memory\"}) / sum(kube_node_status_capacity{k8s_cluster_id=\"$k8s_cluster\",resource=\"memory\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "Memory requests %", + "type": "gauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The sum of Memory (RAM) bytes limits set for containers", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "decbytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 2, + "x": 22, + "y": 1 + }, + "id": 46, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_container_resource_limits{k8s_cluster_id=\"$k8s_cluster\",resource=\"memory\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "Memory limits", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The number of Percona Clusters (Custom Resources) deployed in the cluster", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "#EAB839", + "value": 70 + }, + { + "color": "red", + "value": 90 + } + ] + }, + "unit": "none" + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 4, + "x": 0, + "y": 5 + }, + "id": 40, + "options": { + "colorMode": "none", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(sum(kube_pxc_info{k8s_cluster_id=\"$k8s_cluster\"}),sum(kube_psmdb_info{k8s_cluster_id=\"$k8s_cluster\"}),sum(kube_pg_info{k8s_cluster_id=\"$k8s_cluster\"}))", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "Percona Clusters", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The number of Percona Clusters (Custom Resources) deployed in the cluster that are not in Ready state", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "#EAB839", + "value": 1 + } + ] + }, + "unit": "none" + }, + "overrides": [] + }, + "gridPos": { + "h": 4, + "w": 4, + "x": 4, + "y": 5 + }, + "id": 42, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "textMode": "auto" + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(sum(kube_pxc_status_state{k8s_cluster_id=\"$k8s_cluster\",state!=\"ready\"}),sum(kube_psmdb_status_state{k8s_cluster_id=\"$k8s_cluster\",state!=\"ready\"}),sum(kube_pg_status_state{k8s_cluster_id=\"$k8s_cluster\",state!=\"ready\"}))", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "Percona Clusters not Ready", + "type": "stat" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 9 + }, + "id": 38, + "panels": [], + "title": "Cluster - Main", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "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": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Ready" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "green", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "CorruptDockerOverlay2" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "super-light-orange", + "mode": "fixed" + } + } + ] + } + ] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 0, + "y": 10 + }, + "id": 6, + "interval": "10s", + "maxDataPoints": 100, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "8.3.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "sum(kube_node_status_condition{k8s_cluster_id=\"$k8s_cluster\",status=\"true\"}) by (condition)", + "interval": "", + "legendFormat": "{{condition}}", + "range": true, + "refId": "Ready" + } + ], + "title": "Node Status", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "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": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Running" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "green", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Failed" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "dark-blue", + "mode": "fixed" + } + } + ] + } + ] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 12, + "y": 10 + }, + "id": 4, + "interval": "10s", + "maxDataPoints": 100, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "8.3.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "sum(kube_pod_status_phase{k8s_cluster_id=\"$k8s_cluster\"}) by (phase)", + "interval": "", + "legendFormat": "{{phase}}", + "range": true, + "refId": "Running" + } + ], + "title": "Pod Status", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The health of Percona Custom Resources (CRs) for Clusters - pxc, psmdb, pg", + "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": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "decimals": 1, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "ready" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "green", + "mode": "fixed" + } + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "error" + }, + "properties": [ + { + "id": "color", + "value": { + "fixedColor": "orange", + "mode": "fixed" + } + } + ] + } + ] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 19 + }, + "id": 39, + "interval": "10s", + "maxDataPoints": 100, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "8.3.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "sum(kube_pxc_status_state{k8s_cluster_id=\"$k8s_cluster\"},kube_psmdb_status_state{k8s_cluster_id=\"$k8s_cluster\"},kube_pg_status_state{k8s_cluster_id=\"$k8s_cluster\"}) by (state)", + "interval": "", + "legendFormat": "{{phase}}", + "range": true, + "refId": "PVC Bound" + } + ], + "title": "Percona Custom Resources - Clusters", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The table that lists Percona Custom Resources - Clusters", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "align": "auto", + "displayMode": "auto", + "inspect": false + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "name" + }, + "properties": [ + { + "id": "links", + "value": [ + { + "title": "", + "url": "/d/WzwxIOTVz/percona-db-cluster?var-namespace=${__data.fields[namespace]}&${k8s_cluster:queryparam}&var-k8s_db_type=${__data.fields[operator]}&var-k8s_db_cr=${__data.fields[name]}\n" + } + ] + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "customresource_kind" + }, + "properties": [ + { + "id": "mappings", + "value": [ + { + "options": { + "PerconaPGCluster": { + "index": 1, + "text": "percona-postgresql-operator" + }, + "PerconaServerMongoDB": { + "index": 2, + "text": "percona-server-mongodb-operator" + }, + "PerconaServerMySQL": { + "index": 3, + "text": "percona-server-mysql-operator" + }, + "PerconaXtraDBCluster": { + "index": 0, + "text": "percona-xtradb-cluster-operator" + } + }, + "type": "value" + } + ] + } + ] + } + ] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 19 + }, + "id": 44, + "options": { + "footer": { + "fields": "", + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true, + "sortBy": [ + { + "desc": true, + "displayName": "customresource_kind" + } + ] + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "kube_pxc_status_state", + "legendFormat": "__auto", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "kube_psmdb_status_state", + "hide": false, + "legendFormat": "__auto", + "range": true, + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "kube_pg_status_state", + "hide": false, + "legendFormat": "__auto", + "range": true, + "refId": "C" + } + ], + "title": "Percona Custom Resources - Clusters", + "transformations": [ + { + "id": "labelsToFields", + "options": {} + }, + { + "id": "merge", + "options": {} + }, + { + "id": "filterByValue", + "options": { + "filters": [ + { + "config": { + "id": "equal", + "options": { + "value": 1 + } + }, + "fieldName": "Value" + } + ], + "match": "any", + "type": "include" + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "container": false, + "customresource_group": false, + "customresource_kind": false, + "customresource_version": false, + "state": false + }, + "indexByName": {}, + "renameByName": { + "container": "", + "customresource_group": "", + "customresource_kind": "operator", + "customresource_version": "", + "name": "" + } + } + }, + { + "id": "groupBy", + "options": { + "fields": { + "Operator": { + "aggregations": [], + "operation": "groupby" + }, + "Value": { + "aggregations": [ + "last" + ] + }, + "cluster": { + "aggregations": [] + }, + "cluster name": { + "aggregations": [], + "operation": "groupby" + }, + "container": { + "aggregations": [] + }, + "customresource_group": { + "aggregations": [] + }, + "customresource_kind": { + "aggregations": [], + "operation": "groupby" + }, + "customresource_version": { + "aggregations": [] + }, + "instance": { + "aggregations": [] + }, + "name": { + "aggregations": [], + "operation": "groupby" + }, + "namespace": { + "aggregations": [], + "operation": "groupby" + }, + "operator": { + "aggregations": [], + "operation": "groupby" + }, + "state": { + "aggregations": [ + "last" + ], + "operation": "aggregate" + } + } + } + } + ], + "type": "table" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The health of Percona Custom Resources (CRs) for Backups - pxc-backup, psmdb-backup, pg-backup", + "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": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "decimals": 1, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 27 + }, + "id": 41, + "interval": "10s", + "maxDataPoints": 100, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "8.3.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "sum(kube_pxc_backup_status_state{k8s_cluster_id=\"$k8s_cluster\"},kube_psmdb_backup_status_state{k8s_cluster_id=\"$k8s_cluster\"},kube_pg_backup_status_state{k8s_cluster_id=\"$k8s_cluster\"}) by (state)", + "interval": "", + "legendFormat": "{{phase}}", + "range": true, + "refId": "PVC Bound" + } + ], + "title": "Percona Custom Resources - Backups", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "description": "The table that lists Percona Custom Resources - Backups", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "align": "auto", + "displayMode": "auto", + "inspect": false + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 27 + }, + "id": 45, + "options": { + "footer": { + "fields": "", + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "kube_pxc_backup_status_state", + "legendFormat": "__auto", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "kube_psmdb_backup_status_state", + "hide": false, + "legendFormat": "__auto", + "range": true, + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "kube_pg_backup_status_state", + "hide": false, + "legendFormat": "__auto", + "range": true, + "refId": "C" + } + ], + "title": "Percona Custom Resources - Backups", + "transformations": [ + { + "id": "labelsToFields", + "options": {} + }, + { + "id": "merge", + "options": {} + }, + { + "id": "filterByValue", + "options": { + "filters": [ + { + "config": { + "id": "equal", + "options": { + "value": 1 + } + }, + "fieldName": "Value" + } + ], + "match": "any", + "type": "include" + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "state": false + }, + "indexByName": {}, + "renameByName": {} + } + }, + { + "id": "groupBy", + "options": { + "fields": { + "Value": { + "aggregations": [ + "last" + ] + }, + "customresource_kind": { + "aggregations": [], + "operation": "groupby" + }, + "name": { + "aggregations": [], + "operation": "groupby" + }, + "namespace": { + "aggregations": [], + "operation": "groupby" + }, + "state": { + "aggregations": [ + "last" + ], + "operation": "aggregate" + } + } + } + } + ], + "type": "table" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "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": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "decimals": 1, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 35 + }, + "id": 5, + "interval": "10s", + "maxDataPoints": 100, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "8.3.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "sum(kube_persistentvolumeclaim_status_phase{k8s_cluster_id=\"$k8s_cluster\"}) by (phase)", + "interval": "", + "legendFormat": "{{phase}}", + "range": true, + "refId": "PVC Bound" + } + ], + "title": "PV and PVC Status", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "align": "auto", + "displayMode": "auto", + "inspect": false + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "__name__" + }, + "properties": [ + { + "id": "custom.width", + "value": 169 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "instance" + }, + "properties": [ + { + "id": "custom.width", + "value": 347 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Reclaim Policy" + }, + "properties": [ + { + "id": "custom.width", + "value": 112 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Provisioner" + }, + "properties": [ + { + "id": "custom.width", + "value": 172 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Storage Class" + }, + "properties": [ + { + "id": "custom.width", + "value": 115 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "container" + }, + "properties": [ + { + "id": "custom.hidden", + "value": true + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "namespace" + }, + "properties": [ + { + "id": "custom.hidden", + "value": true + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "pod" + }, + "properties": [ + { + "id": "custom.width", + "value": 315 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "endpoint" + }, + "properties": [ + { + "id": "custom.hidden", + "value": true + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "pod" + }, + "properties": [ + { + "id": "custom.hidden", + "value": true + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "service" + }, + "properties": [ + { + "id": "custom.hidden", + "value": true + } + ] + } + ] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 35 + }, + "id": 11, + "options": { + "footer": { + "fields": "", + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true, + "sortBy": [ + { + "desc": false, + "displayName": "cluster" + } + ] + }, + "pluginVersion": "9.2.20", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": false, + "expr": "kube_storageclass_info", + "format": "table", + "instant": true, + "interval": "", + "legendFormat": "", + "range": false, + "refId": "A" + } + ], + "title": "Storage Class", + "transformations": [ + { + "id": "organize", + "options": { + "excludeByName": { + "Time": true, + "Value": true, + "__name__": true, + "instance": true, + "job": true, + "prometheus": true + }, + "indexByName": {}, + "renameByName": { + "provisioner": "Provisioner", + "reclaim_policy": "Reclaim Policy", + "storageclass": "Storage Class", + "volume_binding_mode": "Bind Mode" + } + } + } + ], + "type": "table" + }, + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 43 + }, + "id": 49, + "panels": [], + "title": "Cluster - Compute and Network", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "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": "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": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 44 + }, + "id": 2, + "interval": "1s", + "maxDataPoints": 1000, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "8.3.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_container_resource_requests{k8s_cluster_id=\"$k8s_cluster\",resource=\"cpu\"}) / \r\nsum(kube_node_status_capacity{k8s_cluster_id=\"$k8s_cluster\",resource=\"cpu\"})\r\n* 100", + "hide": false, + "legendFormat": "CPU Request %", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_container_resource_limits{k8s_cluster_id=\"$k8s_cluster\",resource=\"cpu\"}) / \r\nsum(kube_node_status_capacity{k8s_cluster_id=\"$k8s_cluster\",resource=\"cpu\"})\r\n* 100", + "hide": false, + "legendFormat": "CPU Limit %", + "range": true, + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_container_resource_requests{k8s_cluster_id=\"$k8s_cluster\",resource=\"memory\"}) / \r\nsum(kube_node_status_capacity{k8s_cluster_id=\"$k8s_cluster\",resource=\"memory\"})\r\n* 100", + "hide": false, + "legendFormat": "Memory Requests %", + "range": true, + "refId": "C" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "expr": "sum(kube_pod_container_resource_limits{k8s_cluster_id=\"$k8s_cluster\",resource=\"memory\"}) / \r\nsum(kube_node_status_capacity{k8s_cluster_id=\"$k8s_cluster\",resource=\"memory\"})\r\n* 100", + "hide": false, + "legendFormat": "Memory Limit %", + "range": true, + "refId": "D" + } + ], + "title": "CPU and Memory %", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "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": "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": "Bps" + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 44 + }, + "id": 3, + "interval": "1s", + "maxDataPoints": 1000, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "8.3.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "sum (rate (container_network_receive_bytes_total[1m]))", + "interval": "", + "legendFormat": "Received", + "range": true, + "refId": "CPU" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "editorMode": "code", + "exemplar": true, + "expr": "- sum (rate (container_network_transmit_bytes_total[1m]))", + "hide": false, + "interval": "", + "legendFormat": "Sent", + "range": true, + "refId": "Memory" + } + ], + "title": "Cluster Network", + "type": "timeseries" + } + ], + "refresh": false, + "schemaVersion": 37, + "style": "dark", + "tags": [ + "Kubernetes", + "Operators", + "Percona" + ], + "templating": { + "list": [ + { + "current": { + "selected": false, + "text": "Metrics", + "value": "Metrics" + }, + "hide": 0, + "includeAll": false, + "multi": false, + "name": "datasource", + "options": [], + "query": "prometheus", + "queryValue": "", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "type": "datasource" + }, + { + "current": { + "selected": false, + "text": "1m", + "value": "1m" + }, + "hide": 0, + "includeAll": false, + "multi": false, + "name": "Data_Usage_Interval", + "options": [ + { + "selected": true, + "text": "1m", + "value": "1m" + }, + { + "selected": false, + "text": "1h", + "value": "1h" + }, + { + "selected": false, + "text": "1d", + "value": "1d" + }, + { + "selected": false, + "text": "1w", + "value": "1w" + } + ], + "query": "1m,1h,1d,1w", + "queryValue": "", + "skipUrlSync": false, + "type": "custom" + }, + { + "allValue": ".*", + "current": { + "selected": false, + "text": "sp-gke-cluster", + "value": "sp-gke-cluster" + }, + "datasource": { + "type": "prometheus", + "uid": "PA58DA793C7250F1B" + }, + "definition": "label_values(k8s_cluster_id)", + "hide": 0, + "includeAll": true, + "label": "K8S Cluster", + "multi": false, + "name": "k8s_cluster", + "options": [], + "query": { + "query": "label_values(k8s_cluster_id)", + "refId": "StandardVariableQuery" + }, + "refresh": 2, + "regex": "", + "skipUrlSync": false, + "sort": 1, + "type": "query" + } + ] + }, + "time": { + "from": "now-30m", + "to": "now" + }, + "timepicker": {}, + "timezone": "", + "title": "Kubernetes Overview", + "uid": "AWHjlxX7k", + "version": 2, + "weekStart": "" +} diff --git a/dashboards/Experimental/Kubernetes_Pods_Status.json b/dashboards/Kubernetes (experimental)/Kubernetes_Pods_Status.json similarity index 100% rename from dashboards/Experimental/Kubernetes_Pods_Status.json rename to dashboards/Kubernetes (experimental)/Kubernetes_Pods_Status.json diff --git a/dashboards/Experimental/Kubernetes_Volumes.json b/dashboards/Kubernetes (experimental)/Kubernetes_Volumes.json similarity index 100% rename from dashboards/Experimental/Kubernetes_Volumes.json rename to dashboards/Kubernetes (experimental)/Kubernetes_Volumes.json