From: Ankush Behl Date: Wed, 16 Apr 2025 07:53:57 +0000 (+0530) Subject: mgr/dashboard: Add application overview page to grafana X-Git-Tag: v20.1.0~282^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F63339%2Fhead;p=ceph.git mgr/dashboard: Add application overview page to grafana fixes: https://tracker.ceph.com/issues/70944 Signed-off-by: Ankush Behl (cherry picked from commit a5dc676c2dd4bc1daeb2c4a1ba34e7b364c9909b) --- diff --git a/monitoring/ceph-mixin/dashboards_out/ceph-application-overview.json b/monitoring/ceph-mixin/dashboards_out/ceph-application-overview.json new file mode 100644 index 0000000000000..b49a666816593 --- /dev/null +++ b/monitoring/ceph-mixin/dashboards_out/ceph-application-overview.json @@ -0,0 +1,1610 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana", + "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" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "id": 21, + "links": [], + "liveNow": false, + "panels": [ + { + "collapsed": false, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 0 + }, + "id": 11, + "panels": [], + "title": "Application ($application)", + "type": "row" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 6, + "x": 0, + "y": 1 + }, + "id": 56, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "pluginVersion": "10.4.16", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "sum(ceph_osd_stat_bytes{cluster=~\"$cluster\"})", + "legendFormat": "__auto", + "range": true, + "refId": "A" + } + ], + "title": "Cluster Capacity", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 6, + "x": 6, + "y": 1 + }, + "id": 52, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "pluginVersion": "10.4.16", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "Sum(rate(ceph_pool_wr{cluster=~\"$cluster\",}[$__rate_interval]) *\n on(pool_id) group_left(instance,name) ceph_pool_metadata{cluster=~\"$cluster\",name=~\"$pool\"})", + "legendFormat": "Write", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "Sum(rate(ceph_pool_rd{cluster=~\"$cluster\",}[$__rate_interval]) *\n on(pool_id) group_left(instance,name) ceph_pool_metadata{cluster=~\"$cluster\",name=~\"$pool\"})", + "hide": false, + "legendFormat": "Read", + "range": true, + "refId": "B" + } + ], + "title": "IOPS", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "SXxUTQhHk" + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 1 + }, + "id": 58, + "options": { + "alertInstanceLabelFilter": "{cluster=\"$cluster\"}", + "alertName": "", + "dashboardAlerts": false, + "groupBy": [ + "cluster" + ], + "groupMode": "custom", + "maxItems": 20, + "sortOrder": 1, + "stateFilter": { + "error": true, + "firing": true, + "noData": false, + "normal": false, + "pending": true + }, + "viewMode": "list" + }, + "title": "Application Alerts", + "type": "alertlist" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 6, + "x": 0, + "y": 6 + }, + "id": 59, + "options": { + "displayMode": "gradient", + "maxVizHeight": 300, + "minVizHeight": 16, + "minVizWidth": 8, + "namePlacement": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showUnfilled": true, + "sizing": "auto", + "valueMode": "color" + }, + "pluginVersion": "10.4.16", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "sum by (application) (ceph_pool_stored{cluster=~\"$cluster\",} *\n on(pool_id) group_left(instance, name, application) ceph_pool_metadata{cluster=~\"$cluster\",application=~\"(.*Block.*)|(.*Filesystem.*)|(.*Object.*)\"})", + "format": "time_series", + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "A" + } + ], + "title": "Capacity Used", + "type": "bargauge" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 5, + "w": 6, + "x": 6, + "y": 6 + }, + "id": 53, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "horizontal", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "pluginVersion": "10.4.16", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "sum(rate(ceph_pool_wr_bytes{cluster=~\"$cluster\",}[$__rate_interval]) *\n on(pool_id) group_left(instance,name) ceph_pool_metadata{cluster=~\"$cluster\", application=~\"$application\", name=~\"$pool\"})", + "legendFormat": "Write", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "sum(rate(ceph_pool_rd_bytes{cluster=~\"$cluster\",}[$__rate_interval]) *\n on(pool_id) group_left(name) ceph_pool_metadata{cluster=~\"$cluster\",application=~\"$application\", name=~\"$pool\"})", + "hide": false, + "legendFormat": "Read", + "range": true, + "refId": "B" + } + ], + "title": "Throughput", + "type": "stat" + }, + { + "columns": [], + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "description": "", + "fieldConfig": { + "defaults": { + "custom": { + "align": "auto", + "cellOptions": { + "type": "auto" + }, + "filterable": true, + "inspect": false + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Time" + }, + "properties": [ + { + "id": "unit", + "value": "short" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "instance" + }, + "properties": [ + { + "id": "unit", + "value": "short" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "job" + }, + "properties": [ + { + "id": "unit", + "value": "short" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "name" + }, + "properties": [ + { + "id": "displayName", + "value": "Pool Name" + }, + { + "id": "unit", + "value": "short" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "pool_id" + }, + "properties": [ + { + "id": "displayName", + "value": "Pool ID" + }, + { + "id": "unit", + "value": "none" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #A" + }, + "properties": [ + { + "id": "displayName", + "value": "Compression Factor" + }, + { + "id": "unit", + "value": "none" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #D" + }, + "properties": [ + { + "id": "displayName", + "value": "% Used" + }, + { + "id": "unit", + "value": "percentunit" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #B" + }, + "properties": [ + { + "id": "displayName", + "value": "Usable Free" + }, + { + "id": "unit", + "value": "bytes" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #C" + }, + "properties": [ + { + "id": "displayName", + "value": "Compression Eligibility" + }, + { + "id": "unit", + "value": "percent" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #E" + }, + "properties": [ + { + "id": "displayName", + "value": "Compression Savings" + }, + { + "id": "unit", + "value": "bytes" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #F" + }, + "properties": [ + { + "id": "displayName", + "value": "Growth (5d)" + }, + { + "id": "unit", + "value": "bytes" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #G" + }, + "properties": [ + { + "id": "displayName", + "value": "IOPS" + }, + { + "id": "unit", + "value": "none" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #H" + }, + "properties": [ + { + "id": "displayName", + "value": "Bandwidth" + }, + { + "id": "unit", + "value": "Bps" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "__name__" + }, + "properties": [ + { + "id": "unit", + "value": "short" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "type" + }, + "properties": [ + { + "id": "unit", + "value": "short" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "compression_mode" + }, + "properties": [ + { + "id": "unit", + "value": "short" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "description" + }, + "properties": [ + { + "id": "displayName", + "value": "Type" + }, + { + "id": "unit", + "value": "short" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #J" + }, + "properties": [ + { + "id": "displayName", + "value": "Stored" + }, + { + "id": "unit", + "value": "bytes" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #I" + }, + "properties": [ + { + "id": "unit", + "value": "short" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #K" + }, + "properties": [ + { + "id": "displayName", + "value": "Compression" + }, + { + "id": "unit", + "value": "short" + }, + { + "id": "decimals", + "value": 2 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #M" + }, + "properties": [ + { + "id": "displayName", + "value": "Quota" + }, + { + "id": "unit", + "value": "bool_yes_no" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Value #N" + }, + "properties": [ + { + "id": "displayName", + "value": "Quota Bytes" + }, + { + "id": "unit", + "value": "bytes" + } + ] + } + ] + }, + "gridPos": { + "h": 8, + "w": 24, + "x": 0, + "y": 11 + }, + "id": 50, + "options": { + "cellHeight": "sm", + "footer": { + "countRows": false, + "enablePagination": false, + "fields": "", + "reducer": [ + "sum" + ], + "show": false + }, + "frameIndex": 1, + "showHeader": true, + "sortBy": [ + { + "desc": true, + "displayName": "Application" + } + ] + }, + "pluginVersion": "10.4.16", + "styles": "", + "targets": [ + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "(\n (ceph_pool_compress_under_bytes{cluster=~\"$cluster\", } /\n ceph_pool_compress_bytes_used{cluster=~\"$cluster\", }) *\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\",application=~\"$application\", name=~\"$pool\"} > 0\n) and on(pool_id) (\n (\n ((ceph_pool_compress_under_bytes{cluster=~\"$cluster\", } > 0) /\n ceph_pool_stored_raw{cluster=~\"$cluster\", })*\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\",application=~\"$application\", name=~\"$pool\"}\n ) * 100 > 0.5\n)\n", + "format": "table", + "instant": true, + "intervalFactor": 1, + "legendFormat": "A", + "refId": "A" + }, + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "(ceph_pool_quota_bytes{cluster=~\"$cluster\",}*\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\",application=~\"$application\", name=~\"$pool\"}\n - \n (ceph_pool_stored{cluster=~\"$cluster\",} *\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\",application=~\"$application\", name=~\"$pool\"})) > 0 \n or\n \n(ceph_pool_max_avail{cluster=~\"$cluster\",} *\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\",application=~\"$application\", name=~\"$pool\"})", + "format": "table", + "instant": true, + "intervalFactor": 1, + "legendFormat": "B", + "refId": "B" + }, + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "((\n (ceph_pool_compress_under_bytes{cluster=~\"$cluster\", } > 0) /\n ceph_pool_stored_raw{cluster=~\"$cluster\", }\n) * 100) *\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\",application=~\"$application\", name=~\"$pool\"}\n ", + "format": "table", + "instant": true, + "intervalFactor": 1, + "legendFormat": "C", + "range": false, + "refId": "C" + }, + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "(ceph_pool_stored{cluster=~\"$cluster\",} *on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\",name=~\"$pool\"})\n /\n (((ceph_pool_quota_bytes{cluster=~\"$cluster\"} > 0) *\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\", name=~\"$pool\", application=~\"$application\"}) or \n((ceph_pool_max_avail{cluster=~\"$cluster\"}+ceph_pool_stored{cluster=~\"$cluster\"}) *\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\",name=~\"$pool\", application=~\"$application\"}))", + "format": "table", + "instant": true, + "intervalFactor": 1, + "legendFormat": "D", + "refId": "D" + }, + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "(ceph_pool_compress_under_bytes{cluster=~\"$cluster\", } -\n ceph_pool_compress_bytes_used{cluster=~\"$cluster\", } > 0) *\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\",application=~\"$application\", name=~\"$pool\"}\n", + "format": "table", + "instant": true, + "intervalFactor": 1, + "legendFormat": "E", + "refId": "E" + }, + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "delta(ceph_pool_stored{cluster=~\"$cluster\", }[5d]) *\n on(pool_id) group_left(name) ceph_pool_metadata{cluster=~\"$cluster\", application=~\"$application\", name=~\"$pool\"}", + "format": "table", + "hide": true, + "instant": true, + "intervalFactor": 1, + "legendFormat": "F", + "refId": "F" + }, + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "rate(ceph_pool_rd{cluster=~\"$cluster\", }[$__rate_interval]) *\n on(pool_id) group_left(name) ceph_pool_metadata{cluster=~\"$cluster\", application=~\"$application\", name=~\"$pool\"}\n + rate(ceph_pool_wr{cluster=~\"$cluster\", }[$__rate_interval]) *\n on(pool_id) group_left(name) ceph_pool_metadata{cluster=~\"$cluster\", application=~\"$application\", name=~\"$pool\"}\n", + "format": "table", + "instant": true, + "intervalFactor": 1, + "legendFormat": "G", + "refId": "G" + }, + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "rate(ceph_pool_rd_bytes{cluster=~\"$cluster\", }[$__rate_interval]) *\n on(pool_id) group_left(name) ceph_pool_metadata{cluster=~\"$cluster\", application=~\"$application\", name=~\"$pool\"} +\n rate(ceph_pool_wr_bytes{cluster=~\"$cluster\", }[$__rate_interval]) *\n on(pool_id) group_left(name) ceph_pool_metadata{cluster=~\"$cluster\", application=~\"$application\", name=~\"$pool\"}\n", + "format": "table", + "instant": true, + "intervalFactor": 1, + "legendFormat": "H", + "refId": "H" + }, + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "ceph_pool_metadata{cluster=~\"$cluster\", application=~\"$application\", name=~\"$pool\"}", + "format": "table", + "hide": false, + "instant": true, + "intervalFactor": 1, + "legendFormat": "I", + "refId": "I" + }, + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "ceph_pool_stored{cluster=~\"$cluster\", } * on(pool_id) group_left ceph_pool_metadata{cluster=~\"$cluster\", application=~\"$application\", name=~\"$pool\"}", + "format": "table", + "instant": true, + "intervalFactor": 1, + "legendFormat": "J", + "refId": "J" + }, + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "ceph_pool_metadata{compression_mode!=\"none\", cluster=~\"$cluster\", application=~\"$application\", name=~\"$pool\"}", + "format": "table", + "hide": false, + "instant": true, + "intervalFactor": 1, + "legendFormat": "K", + "refId": "K" + }, + { + "datasource": { + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "ceph_pool_quota_bytes{cluster=~\"$cluster\"} * on(pool_id) group_left ceph_pool_metadata{cluster=~\"$cluster\", application=~\"$application\", name=~\"$pool\"}}", + "format": "table", + "hide": true, + "instant": true, + "intervalFactor": "", + "legendFormat": "L", + "range": false, + "refId": "L" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "ceph_pool_quota_bytes{cluster=~\"$cluster\",} *\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\",name=~\"$pool\", application=~\"$application\"}", + "format": "table", + "hide": false, + "instant": true, + "legendFormat": "__auto", + "range": false, + "refId": "M" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "exemplar": false, + "expr": "((ceph_pool_quota_bytes{cluster=~\"$cluster\"}) *\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\", application=~\"$application\", name=~\"$pool\"})", + "format": "table", + "hide": false, + "instant": true, + "legendFormat": "N", + "range": false, + "refId": "N" + } + ], + "title": "Pool Overview", + "transformations": [ + { + "id": "merge", + "options": {} + }, + { + "id": "seriesToRows", + "options": {} + }, + { + "id": "organize", + "options": { + "excludeByName": { + "Time": true, + "Value #A": true, + "Value #B": false, + "Value #C": true, + "Value #D": false, + "Value #E": true, + "Value #I": true, + "Value #K": true, + "__name__": true, + "cluster": true, + "compression_mode": true, + "instance": true, + "job": true, + "pool_id": true, + "type": true + }, + "includeByName": {}, + "indexByName": { + "Time": 0, + "Value #A": 20, + "Value #B": 10, + "Value #C": 21, + "Value #D": 12, + "Value #E": 22, + "Value #G": 13, + "Value #H": 14, + "Value #I": 18, + "Value #J": 8, + "Value #K": 19, + "Value #M": 6, + "Value #N": 11, + "__name__": 15, + "application": 4, + "cluster": 1, + "compression_mode": 16, + "description": 5, + "instance": 7, + "job": 2, + "name": 3, + "pool_id": 9, + "type": 17 + }, + "renameByName": { + "application": "Application" + } + } + } + ], + "type": "table" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": 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 + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 0, + "y": 19 + }, + "id": 23, + "options": { + "legend": { + "calcs": [ + "lastNotNull" + ], + "displayMode": "table", + "placement": "right", + "showLegend": true, + "sortBy": "Last *", + "sortDesc": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "9.4.7", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "ceph_pool_stored{cluster=~\"$cluster\",} *\n on(pool_id) group_left(instance, name) ceph_pool_metadata{cluster=~\"$cluster\",name=~\"$pool\"}", + "legendFormat": "{{name}}", + "range": true, + "refId": "A" + } + ], + "title": "Total used capacity", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 9, + "w": 12, + "x": 12, + "y": 19 + }, + "id": 17, + "options": { + "legend": { + "calcs": [ + "lastNotNull" + ], + "displayMode": "table", + "placement": "right", + "showLegend": true, + "sortBy": "Last *", + "sortDesc": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "rate(ceph_pool_wr{cluster=~\"$cluster\",}[$__rate_interval]) *\n on(pool_id) group_left(instance,name) ceph_pool_metadata{cluster=~\"$cluster\",name=~\"$pool\"}", + "legendFormat": "{{name}} - Writes", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "rate(ceph_pool_rd{cluster=~\"$cluster\",}[$__rate_interval]) *\n on(pool_id) group_left(instance,name) ceph_pool_metadata{cluster=~\"$cluster\",name=~\"$pool\"}", + "hide": false, + "legendFormat": "{{name}} - Reads", + "range": true, + "refId": "B" + } + ], + "title": "IOPS", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 0, + "y": 28 + }, + "id": 18, + "options": { + "legend": { + "calcs": [ + "lastNotNull" + ], + "displayMode": "table", + "placement": "right", + "showLegend": true, + "sortBy": "Last *", + "sortDesc": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "rate(ceph_pool_wr_bytes{cluster=~\"$cluster\",}[$__rate_interval]) *\n on(pool_id) group_left(instance,name) ceph_pool_metadata{cluster=~\"$cluster\", name=~\"$pool\"}", + "legendFormat": "{{name}} - Writes", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "rate(ceph_pool_rd_bytes{cluster=~\"$cluster\",}[$__rate_interval]) *\n on(pool_id) group_left(instance,name) ceph_pool_metadata{cluster=~\"$cluster\", name=~\"$pool\"}", + "hide": false, + "legendFormat": "{{name}} - Reads", + "range": true, + "refId": "B" + } + ], + "title": "Throughput", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "short" + }, + "overrides": [] + }, + "gridPos": { + "h": 10, + "w": 12, + "x": 12, + "y": 28 + }, + "id": 24, + "options": { + "legend": { + "calcs": [ + "lastNotNull" + ], + "displayMode": "table", + "placement": "right", + "showLegend": true, + "sortBy": "Last *", + "sortDesc": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "editorMode": "code", + "expr": "ceph_pool_objects{cluster=~\"$cluster\",} *\n on(pool_id) group_left(instance,name) ceph_pool_metadata{cluster=~\"$cluster\", name=~\"$pool\"}\n", + "legendFormat": "{{name}}", + "range": true, + "refId": "A" + } + ], + "title": "Total objects", + "type": "timeseries" + } + ], + "refresh": "30s", + "revision": 1, + "schemaVersion": 39, + "tags": [], + "templating": { + "list": [ + { + "hide": 0, + "includeAll": false, + "multi": false, + "name": "datasource", + "options": [], + "query": "prometheus", + "queryValue": "", + "refresh": 1, + "regex": "", + "skipUrlSync": false, + "type": "datasource" + }, + { + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(ceph_health_status, cluster)", + "hide": 0, + "includeAll": false, + "label": "Cluster", + "multi": false, + "name": "cluster", + "options": [], + "query": { + "query": "label_values(ceph_health_status, cluster)", + "refId": "StandardVariableQuery" + }, + "refresh": 2, + "regex": "", + "skipUrlSync": false, + "sort": 0, + "type": "query" + }, + { + "allValue": "", + "current": { + "selected": false, + "text": "All", + "value": "$__all" + }, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(ceph_pool_metadata, application)", + "hide": 0, + "includeAll": true, + "label": "Application", + "multi": false, + "name": "application", + "options": [], + "query": { + "query": "label_values(ceph_pool_metadata, application)", + "refId": "StandardVariableQuery" + }, + "refresh": 2, + "regex": "^(?=.*\\Filesystem\\b)|(?=.*\\Object\\b)|(?=.*\\Block\\b).*$", + "skipUrlSync": false, + "sort": 6, + "type": "query" + }, + { + "current": { + "selected": false, + "text": "All", + "value": "$__all" + }, + "datasource": { + "type": "prometheus", + "uid": "${datasource}" + }, + "definition": "label_values(ceph_pool_metadata{application=~'$application'}, name)", + "hide": 0, + "includeAll": true, + "label": "Pools", + "multi": false, + "name": "pool", + "options": [], + "query": { + "query": "label_values(ceph_pool_metadata{application=~'$application'}, name)", + "refId": "StandardVariableQuery" + }, + "refresh": 2, + "regex": "^[^.].*", + "skipUrlSync": false, + "sort": 0, + "type": "query" + } + ] + }, + "time": { + "from": "now-6h", + "to": "now" + }, + "timepicker": {}, + "timezone": "", + "title": "Ceph - Application Overview", + "uid": "92LBIaJIz2", + "version": 3, + "weekStart": "" +}