# Grafana dashboard ConfigMaps — Storage --- apiVersion: v1 kind: ConfigMap metadata: name: grafana-dashboard-seaweedfs namespace: monitoring labels: grafana_dashboard: "1" annotations: grafana_folder: "Storage" data: seaweedfs.json: | { "annotations": { "list": [] }, "editable": true, "graphTooltip": 1, "panels": [ { "title": "Cluster Overview", "type": "row", "gridPos": { "h": 1, "w": 24, "x": 0, "y": 0 }, "collapsed": false }, { "title": "Master Leader", "type": "stat", "gridPos": { "h": 4, "w": 6, "x": 0, "y": 1 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "SeaweedFS_master_is_leader", "legendFormat": "", "instant": true } ], "fieldConfig": { "defaults": { "mappings": [ { "type": "value", "options": { "1": { "text": "Leader", "color": "green" }, "0": { "text": "Follower", "color": "red" } } } ] } } }, { "title": "Writable Volumes", "type": "stat", "gridPos": { "h": 4, "w": 6, "x": 6, "y": 1 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "SeaweedFS_master_volume_layout_writable", "legendFormat": "", "instant": true } ], "fieldConfig": { "defaults": { "thresholds": { "steps": [{"color":"red","value":null},{"color":"yellow","value":1},{"color":"green","value":3}] } } } }, { "title": "Crowded Volumes", "type": "stat", "gridPos": { "h": 4, "w": 6, "x": 12, "y": 1 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "SeaweedFS_master_volume_layout_crowded", "legendFormat": "", "instant": true } ], "fieldConfig": { "defaults": { "thresholds": { "steps": [{"color":"green","value":null},{"color":"yellow","value":1},{"color":"red","value":5}] } } } }, { "title": "Leader Changes", "type": "stat", "gridPos": { "h": 4, "w": 6, "x": 18, "y": 1 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "increase(SeaweedFS_master_leader_changes[1h])", "legendFormat": "", "instant": true } ], "fieldConfig": { "defaults": { "thresholds": { "steps": [{"color":"green","value":null},{"color":"yellow","value":1},{"color":"red","value":3}] } } } }, { "title": "Volume Server", "type": "row", "gridPos": { "h": 1, "w": 24, "x": 0, "y": 5 }, "collapsed": false }, { "title": "Total Volumes", "type": "stat", "gridPos": { "h": 4, "w": 6, "x": 0, "y": 6 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(SeaweedFS_volumeServer_volumes)", "legendFormat": "", "instant": true } ] }, { "title": "Max Volumes", "type": "stat", "gridPos": { "h": 4, "w": 6, "x": 6, "y": 6 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(SeaweedFS_volumeServer_max_volumes)", "legendFormat": "", "instant": true } ] }, { "title": "Disk Size", "type": "stat", "gridPos": { "h": 4, "w": 6, "x": 12, "y": 6 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(SeaweedFS_volumeServer_total_disk_size)", "legendFormat": "", "instant": true } ], "fieldConfig": { "defaults": { "unit": "bytes" } } }, { "title": "Read-Only Volumes", "type": "stat", "gridPos": { "h": 4, "w": 6, "x": 18, "y": 6 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(SeaweedFS_volumeServer_read_only_volumes)", "legendFormat": "", "instant": true } ], "fieldConfig": { "defaults": { "thresholds": { "steps": [{"color":"green","value":null},{"color":"yellow","value":1},{"color":"red","value":5}] } } } }, { "title": "Volume Request Rate", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 0, "y": 10 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(rate(SeaweedFS_volumeServer_request_total[5m]))", "legendFormat": "requests/s" } ], "fieldConfig": { "defaults": { "unit": "reqps" } } }, { "title": "Volume Latency (p95)", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 8, "y": 10 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "histogram_quantile(0.95, sum(rate(SeaweedFS_volumeServer_request_seconds_bucket[5m])) by (le))", "legendFormat": "p95" } ], "fieldConfig": { "defaults": { "unit": "s" } } }, { "title": "Volume In-Flight Requests", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 16, "y": 10 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(SeaweedFS_volumeServer_in_flight_requests)", "legendFormat": "in-flight" } ], "fieldConfig": { "defaults": { "unit": "short" } } }, { "title": "Master Heartbeats & Errors", "type": "timeseries", "gridPos": { "h": 8, "w": 12, "x": 0, "y": 18 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "rate(SeaweedFS_master_received_heartbeats[5m])", "legendFormat": "heartbeats/s" }, { "expr": "rate(SeaweedFS_master_pick_for_write_error[5m])", "legendFormat": "write errors/s" }, { "expr": "rate(SeaweedFS_master_broadcast_to_full[5m])", "legendFormat": "broadcast full/s" } ], "fieldConfig": { "defaults": { "unit": "ops" } } }, { "title": "Vacuuming Activity", "type": "timeseries", "gridPos": { "h": 8, "w": 12, "x": 12, "y": 18 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "SeaweedFS_volumeServer_resource{type=\"vacuuming\"}", "legendFormat": "{{instance}}" } ], "fieldConfig": { "defaults": { "unit": "short" } } }, { "title": "Filer", "type": "row", "gridPos": { "h": 1, "w": 24, "x": 0, "y": 26 }, "collapsed": false }, { "title": "Filer Request Rate", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 0, "y": 27 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(rate(SeaweedFS_filer_request_total[5m]))", "legendFormat": "requests/s" } ], "fieldConfig": { "defaults": { "unit": "reqps" } } }, { "title": "Filer Latency (p95)", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 8, "y": 27 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "histogram_quantile(0.95, sum(rate(SeaweedFS_filer_request_seconds_bucket[5m])) by (le))", "legendFormat": "p95" } ], "fieldConfig": { "defaults": { "unit": "s" } } }, { "title": "Filer In-Flight Requests", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 16, "y": 27 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(SeaweedFS_filer_in_flight_requests)", "legendFormat": "in-flight" } ], "fieldConfig": { "defaults": { "unit": "short" } } }, { "title": "Filer Handler Ops", "type": "timeseries", "gridPos": { "h": 8, "w": 12, "x": 0, "y": 35 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(rate(SeaweedFS_filer_handler_total[5m])) by (type)", "legendFormat": "{{type}}" } ], "fieldConfig": { "defaults": { "unit": "ops" } } }, { "title": "Filer Store Ops", "type": "timeseries", "gridPos": { "h": 8, "w": 12, "x": 12, "y": 35 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(rate(SeaweedFS_filerStore_request_total[5m])) by (type)", "legendFormat": "{{type}}" }, { "expr": "histogram_quantile(0.95, sum(rate(SeaweedFS_filerStore_request_seconds_bucket[5m])) by (le))", "legendFormat": "store p95 latency" } ], "fieldConfig": { "defaults": { "unit": "ops" } } }, { "title": "S3 API", "type": "row", "gridPos": { "h": 1, "w": 24, "x": 0, "y": 43 }, "collapsed": false }, { "title": "S3 Request Rate", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 0, "y": 44 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(rate(SeaweedFS_s3_request_total[5m])) by (bucket)", "legendFormat": "{{bucket}}" } ], "fieldConfig": { "defaults": { "unit": "reqps" } } }, { "title": "S3 Latency (p95)", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 8, "y": 44 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "histogram_quantile(0.95, sum(rate(SeaweedFS_s3_request_seconds_bucket[5m])) by (le))", "legendFormat": "p95" } ], "fieldConfig": { "defaults": { "unit": "s" } } }, { "title": "S3 Time to First Byte (p95)", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 16, "y": 44 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "histogram_quantile(0.95, sum(rate(SeaweedFS_s3_time_to_first_byte_millisecond_bucket[5m])) by (le))", "legendFormat": "p95" } ], "fieldConfig": { "defaults": { "unit": "ms" } } }, { "title": "S3 Bucket Sizes", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 0, "y": 52 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "SeaweedFS_s3_bucket_size_bytes", "legendFormat": "{{bucket}}" } ], "fieldConfig": { "defaults": { "unit": "bytes" } } }, { "title": "S3 Bucket Physical Sizes", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 8, "y": 52 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "SeaweedFS_s3_bucket_physical_size_bytes", "legendFormat": "{{bucket}}" } ], "fieldConfig": { "defaults": { "unit": "bytes" } } }, { "title": "S3 Object Count per Bucket", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 16, "y": 52 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "SeaweedFS_s3_bucket_object_count", "legendFormat": "{{bucket}}" } ], "fieldConfig": { "defaults": { "unit": "short" } } }, { "title": "S3 Traffic Received", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 0, "y": 60 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(rate(SeaweedFS_s3_bucket_traffic_received_bytes_total[5m])) by (bucket)", "legendFormat": "{{bucket}}" } ], "fieldConfig": { "defaults": { "unit": "Bps" } } }, { "title": "S3 Traffic Sent", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 8, "y": 60 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(rate(SeaweedFS_s3_bucket_traffic_sent_bytes_total[5m])) by (bucket)", "legendFormat": "{{bucket}}" } ], "fieldConfig": { "defaults": { "unit": "Bps" } } }, { "title": "S3 Object Uploads / Deletes", "type": "timeseries", "gridPos": { "h": 8, "w": 8, "x": 16, "y": 60 }, "datasource": { "uid": "prometheus" }, "targets": [ { "expr": "sum(rate(SeaweedFS_s3_uploaded_objects[5m]))", "legendFormat": "uploads/s" }, { "expr": "sum(rate(SeaweedFS_s3_deleted_objects[5m]))", "legendFormat": "deletes/s" } ], "fieldConfig": { "defaults": { "unit": "ops" } } } ], "schemaVersion": 39, "tags": ["seaweedfs", "storage", "s3"], "templating": { "list": [] }, "time": { "from": "now-1h", "to": "now" }, "title": "SeaweedFS", "uid": "seaweedfs" }