{ "uid": "incus-cluster-overview", "title": "Incus Cluster Overview", "description": "Overview of all Incus instances: CPU, memory, network, disk I/O, and instance status table with drill-down links.", "tags": [ "incus", "cluster", "containers" ], "timezone": "browser", "schemaVersion": 39, "refresh": "30s", "time": { "from": "now-1h", "to": "now" }, "fiscalYearStartMonth": 0, "liveNow": false, "editable": true, "graphTooltip": 1, "links": [ { "asDropdown": true, "icon": "external link", "includeVars": true, "keepTime": true, "tags": [ "incus" ], "targetBlank": false, "title": "Incus Dashboards", "tooltip": "Navigate to other Incus dashboards", "type": "dashboards" } ], "templating": { "list": [ { "current": {}, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "definition": "label_values(incus_uptime_seconds, name)", "includeAll": true, "multi": true, "name": "instance", "query": "label_values(incus_uptime_seconds, name)", "refresh": 2, "regex": "", "sort": 1, "type": "query", "label": "Instance", "allValue": ".*" }, { "current": {}, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "definition": "label_values(incus_uptime_seconds, instance)", "includeAll": true, "multi": true, "name": "node", "query": "label_values(incus_uptime_seconds, instance)", "refresh": 2, "regex": "", "sort": 1, "type": "query", "label": "Node", "allValue": ".*" } ] }, "annotations": { "list": [ { "builtIn": 1, "datasource": { "type": "grafana", "uid": "-- Grafana --" }, "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", "name": "Annotations & Alerts", "type": "dashboard" } ] }, "panels": [ { "type": "row", "title": "Cluster Status", "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 0 }, "id": 1, "panels": [] }, { "type": "stat", "title": "Total Instances", "description": "Number of running Incus instances (reporting uptime).", "gridPos": { "h": 4, "w": 6, "x": 0, "y": 1 }, "id": 2, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "count(incus_uptime_seconds{instance=~\"$node\", name=~\"$instance\"})", "legendFormat": "Instances", "refId": "A" } ], "fieldConfig": { "defaults": { "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 10 }, { "color": "red", "value": 50 } ] }, "unit": "none", "color": { "mode": "thresholds" } }, "overrides": [] }, "options": { "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "orientation": "auto", "textMode": "auto", "colorMode": "value", "graphMode": "area", "justifyMode": "auto" } }, { "type": "stat", "title": "Total CPUs", "description": "Sum of effective CPUs across all Incus instances.", "gridPos": { "h": 4, "w": 6, "x": 6, "y": 1 }, "id": 3, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "sum(incus_cpu_effective_total{instance=~\"$node\", name=~\"$instance\"})", "legendFormat": "CPUs", "refId": "A" } ], "fieldConfig": { "defaults": { "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] }, "unit": "none", "color": { "mode": "thresholds" } }, "overrides": [] }, "options": { "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "orientation": "auto", "textMode": "auto", "colorMode": "value", "graphMode": "area", "justifyMode": "auto" } }, { "type": "stat", "title": "Total Memory", "description": "Sum of total memory across all Incus instances.", "gridPos": { "h": 4, "w": 6, "x": 12, "y": 1 }, "id": 4, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "sum(incus_memory_MemTotal_bytes{instance=~\"$node\", name=~\"$instance\"})", "legendFormat": "Total Memory", "refId": "A" } ], "fieldConfig": { "defaults": { "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] }, "unit": "bytes", "color": { "mode": "thresholds" } }, "overrides": [] }, "options": { "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "orientation": "auto", "textMode": "auto", "colorMode": "value", "graphMode": "area", "justifyMode": "auto" } }, { "type": "gauge", "title": "Cluster Memory Utilization", "description": "Overall cluster memory utilization (RSS / Total) across all instances.", "gridPos": { "h": 4, "w": 6, "x": 18, "y": 1 }, "id": 40, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "(sum(incus_memory_RSS_bytes{instance=~\"$node\", name=~\"$instance\"}) / sum(incus_memory_MemTotal_bytes{instance=~\"$node\", name=~\"$instance\"})) * 100", "legendFormat": "Utilization", "refId": "A" } ], "fieldConfig": { "defaults": { "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 60 }, { "color": "orange", "value": 80 }, { "color": "red", "value": 90 } ] }, "unit": "percent", "min": 0, "max": 100, "color": { "mode": "thresholds" } }, "overrides": [] }, "options": { "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "showThresholdLabels": false, "showThresholdMarkers": true, "orientation": "auto" } }, { "type": "row", "title": "Instance Status", "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 5 }, "id": 50, "panels": [] }, { "type": "table", "title": "Instance Status Table", "description": "Per-instance summary: uptime, CPU usage, memory RSS, total memory. Click instance name to drill down.", "gridPos": { "h": 8, "w": 24, "x": 0, "y": 6 }, "id": 51, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "incus_uptime_seconds{instance=~\"$node\", name=~\"$instance\"}", "legendFormat": "", "refId": "A", "format": "table", "instant": true }, { "expr": "sum by (name, instance) (rate(incus_cpu_seconds_total{instance=~\"$node\", name=~\"$instance\"}[$__rate_interval]))", "legendFormat": "", "refId": "B", "format": "table", "instant": true }, { "expr": "incus_memory_RSS_bytes{instance=~\"$node\", name=~\"$instance\"}", "legendFormat": "", "refId": "C", "format": "table", "instant": true }, { "expr": "incus_memory_MemTotal_bytes{instance=~\"$node\", name=~\"$instance\"}", "legendFormat": "", "refId": "D", "format": "table", "instant": true } ], "fieldConfig": { "defaults": { "custom": { "align": "auto", "displayMode": "auto", "inspect": false, "filterable": true }, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] }, "color": { "mode": "thresholds" } }, "overrides": [ { "matcher": { "id": "byName", "options": "name" }, "properties": [ { "id": "displayName", "value": "Instance" }, { "id": "custom.width", "value": 200 }, { "id": "links", "value": [ { "title": "View instance details", "url": "/d/incus-instance-deep-dive?var-instance=${__value.text}&${__url_time_range}", "targetBlank": false } ] } ] }, { "matcher": { "id": "byName", "options": "instance" }, "properties": [ { "id": "displayName", "value": "Node" } ] }, { "matcher": { "id": "byName", "options": "Value #A" }, "properties": [ { "id": "displayName", "value": "Uptime" }, { "id": "unit", "value": "s" } ] }, { "matcher": { "id": "byName", "options": "Value #B" }, "properties": [ { "id": "displayName", "value": "CPU/s" }, { "id": "unit", "value": "short" }, { "id": "decimals", "value": 3 } ] }, { "matcher": { "id": "byName", "options": "Value #C" }, "properties": [ { "id": "displayName", "value": "Memory RSS" }, { "id": "unit", "value": "bytes" } ] }, { "matcher": { "id": "byName", "options": "Value #D" }, "properties": [ { "id": "displayName", "value": "Total Memory" }, { "id": "unit", "value": "bytes" } ] } ] }, "options": { "showHeader": true, "sortBy": [ { "displayName": "Instance", "desc": false } ], "footer": { "show": false, "reducer": [ "sum" ], "fields": "" } }, "transformations": [ { "id": "merge", "options": {} }, { "id": "organize", "options": { "excludeByName": { "Time": true, "__name__": true, "job": true }, "indexByName": { "name": 0, "instance": 1, "Value #A": 2, "Value #B": 3, "Value #C": 4, "Value #D": 5 }, "renameByName": {} } } ] }, { "type": "row", "title": "Per-Instance CPU", "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 14 }, "id": 5, "panels": [] }, { "type": "timeseries", "title": "CPU Usage by Instance", "description": "Per-second CPU time consumed by each Incus instance.", "gridPos": { "h": 8, "w": 24, "x": 0, "y": 15 }, "id": 6, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "sum by (name) (rate(incus_cpu_seconds_total{instance=~\"$node\", name=~\"$instance\"}[$__rate_interval]))", "legendFormat": "{{name}}", "refId": "A" } ], "fieldConfig": { "defaults": { "custom": { "drawStyle": "line", "lineInterpolation": "smooth", "lineWidth": 1, "fillOpacity": 15, "gradientMode": "scheme", "spanNulls": false, "showPoints": "never", "pointSize": 5, "stacking": { "mode": "none", "group": "A" }, "axisPlacement": "auto", "axisLabel": "", "scaleDistribution": { "type": "linear" }, "thresholdsStyle": { "mode": "off" } }, "unit": "short", "color": { "mode": "palette-classic" }, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] }, "links": [ { "title": "Drill down to ${__field.labels.name}", "url": "/d/incus-instance-deep-dive?var-instance=${__field.labels.name}&${__url_time_range}", "targetBlank": false } ] }, "overrides": [] }, "options": { "tooltip": { "mode": "multi", "sort": "desc" }, "legend": { "displayMode": "table", "placement": "right", "calcs": [ "mean", "max", "lastNotNull" ] } } }, { "type": "row", "title": "Per-Instance Memory", "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 23 }, "id": 7, "panels": [] }, { "type": "timeseries", "title": "Memory RSS by Instance", "description": "Resident set size (RSS) memory usage per Incus instance over time.", "gridPos": { "h": 8, "w": 14, "x": 0, "y": 24 }, "id": 8, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "incus_memory_RSS_bytes{instance=~\"$node\", name=~\"$instance\"}", "legendFormat": "{{name}}", "refId": "A" } ], "fieldConfig": { "defaults": { "custom": { "drawStyle": "line", "lineInterpolation": "smooth", "lineWidth": 1, "fillOpacity": 15, "gradientMode": "none", "spanNulls": false, "showPoints": "never", "pointSize": 5, "stacking": { "mode": "none", "group": "A" }, "axisPlacement": "auto", "axisLabel": "", "scaleDistribution": { "type": "linear" }, "thresholdsStyle": { "mode": "off" } }, "unit": "bytes", "color": { "mode": "palette-classic" }, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] } }, "overrides": [] }, "options": { "tooltip": { "mode": "multi", "sort": "desc" }, "legend": { "displayMode": "table", "placement": "right", "calcs": [ "mean", "max", "lastNotNull" ] } } }, { "type": "bargauge", "title": "Memory Usage % (RSS / Total)", "description": "Current memory utilization per instance as RSS divided by total memory.", "gridPos": { "h": 8, "w": 10, "x": 14, "y": 24 }, "id": 9, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "(incus_memory_RSS_bytes{instance=~\"$node\", name=~\"$instance\"} / incus_memory_MemTotal_bytes{instance=~\"$node\", name=~\"$instance\"}) * 100", "legendFormat": "{{name}}", "refId": "A" } ], "fieldConfig": { "defaults": { "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null }, { "color": "yellow", "value": 60 }, { "color": "orange", "value": 80 }, { "color": "red", "value": 90 } ] }, "unit": "percent", "min": 0, "max": 100, "color": { "mode": "thresholds" } }, "overrides": [] }, "options": { "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false }, "orientation": "horizontal", "displayMode": "gradient", "showUnfilled": true, "minVizWidth": 8, "minVizHeight": 16, "valueMode": "color" } }, { "type": "row", "title": "Network I/O", "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 32 }, "id": 10, "panels": [] }, { "type": "timeseries", "title": "Network Receive Rate by Instance", "description": "Inbound network throughput per Incus instance.", "gridPos": { "h": 8, "w": 12, "x": 0, "y": 33 }, "id": 11, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "sum by (name) (rate(incus_network_receive_bytes_total{instance=~\"$node\", name=~\"$instance\"}[$__rate_interval]))", "legendFormat": "{{name}}", "refId": "A" } ], "fieldConfig": { "defaults": { "custom": { "drawStyle": "line", "lineInterpolation": "smooth", "lineWidth": 1, "fillOpacity": 15, "gradientMode": "none", "spanNulls": false, "showPoints": "never", "pointSize": 5, "stacking": { "mode": "none", "group": "A" }, "axisPlacement": "auto", "axisLabel": "", "scaleDistribution": { "type": "linear" }, "thresholdsStyle": { "mode": "off" } }, "unit": "Bps", "color": { "mode": "palette-classic" }, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] } }, "overrides": [] }, "options": { "tooltip": { "mode": "multi", "sort": "desc" }, "legend": { "displayMode": "table", "placement": "right", "calcs": [ "mean", "max", "lastNotNull" ] } } }, { "type": "timeseries", "title": "Network Transmit Rate by Instance", "description": "Outbound network throughput per Incus instance.", "gridPos": { "h": 8, "w": 12, "x": 12, "y": 33 }, "id": 12, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "sum by (name) (rate(incus_network_transmit_bytes_total{instance=~\"$node\", name=~\"$instance\"}[$__rate_interval]))", "legendFormat": "{{name}}", "refId": "A" } ], "fieldConfig": { "defaults": { "custom": { "drawStyle": "line", "lineInterpolation": "smooth", "lineWidth": 1, "fillOpacity": 15, "gradientMode": "none", "spanNulls": false, "showPoints": "never", "pointSize": 5, "stacking": { "mode": "none", "group": "A" }, "axisPlacement": "auto", "axisLabel": "", "scaleDistribution": { "type": "linear" }, "thresholdsStyle": { "mode": "off" } }, "unit": "Bps", "color": { "mode": "palette-classic" }, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] } }, "overrides": [] }, "options": { "tooltip": { "mode": "multi", "sort": "desc" }, "legend": { "displayMode": "table", "placement": "right", "calcs": [ "mean", "max", "lastNotNull" ] } } }, { "type": "row", "title": "Disk I/O", "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 41 }, "id": 13, "panels": [] }, { "type": "timeseries", "title": "Disk Read Rate by Instance", "description": "Disk read throughput per Incus instance.", "gridPos": { "h": 8, "w": 12, "x": 0, "y": 42 }, "id": 14, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "sum by (name) (rate(incus_disk_read_bytes_total{instance=~\"$node\", name=~\"$instance\"}[$__rate_interval]))", "legendFormat": "{{name}}", "refId": "A" } ], "fieldConfig": { "defaults": { "custom": { "drawStyle": "line", "lineInterpolation": "smooth", "lineWidth": 1, "fillOpacity": 15, "gradientMode": "none", "spanNulls": false, "showPoints": "never", "pointSize": 5, "stacking": { "mode": "none", "group": "A" }, "axisPlacement": "auto", "axisLabel": "", "scaleDistribution": { "type": "linear" }, "thresholdsStyle": { "mode": "off" } }, "unit": "Bps", "color": { "mode": "palette-classic" }, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] } }, "overrides": [] }, "options": { "tooltip": { "mode": "multi", "sort": "desc" }, "legend": { "displayMode": "table", "placement": "right", "calcs": [ "mean", "max", "lastNotNull" ] } } }, { "type": "timeseries", "title": "Disk Write Rate by Instance", "description": "Disk write throughput per Incus instance.", "gridPos": { "h": 8, "w": 12, "x": 12, "y": 42 }, "id": 15, "datasource": { "type": "prometheus", "uid": "${DS_PROMETHEUS}" }, "targets": [ { "expr": "sum by (name) (rate(incus_disk_written_bytes_total{instance=~\"$node\", name=~\"$instance\"}[$__rate_interval]))", "legendFormat": "{{name}}", "refId": "A" } ], "fieldConfig": { "defaults": { "custom": { "drawStyle": "line", "lineInterpolation": "smooth", "lineWidth": 1, "fillOpacity": 15, "gradientMode": "none", "spanNulls": false, "showPoints": "never", "pointSize": 5, "stacking": { "mode": "none", "group": "A" }, "axisPlacement": "auto", "axisLabel": "", "scaleDistribution": { "type": "linear" }, "thresholdsStyle": { "mode": "off" } }, "unit": "Bps", "color": { "mode": "palette-classic" }, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] } }, "overrides": [] }, "options": { "tooltip": { "mode": "multi", "sort": "desc" }, "legend": { "displayMode": "table", "placement": "right", "calcs": [ "mean", "max", "lastNotNull" ] } } } ] }