26Z12o

Young-Kyoo Kim·3일 전
{
  "annotations": {
    "list": []
  },
  "editable": true,
  "fiscalYearStartMonth": 0,
  "graphTooltip": 1,
  "id": null,
  "links": [],
  "liveNow": false,
  "panels": [
    {
      "title": "Avg TPS",
      "type": "stat",
      "gridPos": { "h": 4, "w": 3, "x": 0, "y": 0 },
      "targets": [
        {
          "expr": "sum(rate(minio_api_requests_total[1m]))",
          "refId": "A"
        }
      ],
      "options": {
        "reduceOptions": { "values": false, "calcs": ["mean"] },
        "orientation": "auto",
        "textMode": "auto"
      },
      "fieldConfig": {
        "defaults": { "unit": "reqps", "color": { "mode": "thresholds" } }
      }
    },
    {
      "title": "Current Inflight Requests",
      "type": "stat",
      "gridPos": { "h": 4, "w": 3, "x": 3, "y": 0 },
      "targets": [
        {
          "expr": "sum(minio_api_requests_inflight_total)",
          "refId": "A"
        }
      ],
      "options": {
        "reduceOptions": { "values": false, "calcs": ["lastNotNull"] },
        "orientation": "auto",
        "textMode": "auto"
      },
      "fieldConfig": {
        "defaults": { "unit": "short", "color": { "mode": "thresholds" } }
      }
    },
    {
      "title": "Avg Drive IOPS (Read / Write)",
      "type": "stat",
      "gridPos": { "h": 4, "w": 3, "x": 6, "y": 0 },
      "targets": [
        {
          "expr": "sum(minio_system_drive_reads_per_sec)",
          "legendFormat": "Read",
          "refId": "A"
        },
        {
          "expr": "sum(minio_system_drive_writes_per_sec)",
          "legendFormat": "Write",
          "refId": "B"
        }
      ],
      "options": {
        "reduceOptions": { "values": false, "calcs": ["mean"] },
        "orientation": "horizontal",
        "textMode": "auto"
      },
      "fieldConfig": {
        "defaults": { "unit": "iops", "color": { "mode": "thresholds" } }
      }
    },
    {
      "title": "Avg Overall Latency",
      "type": "stat",
      "gridPos": { "h": 4, "w": 3, "x": 9, "y": 0 },
      "targets": [
        {
          "expr": "sum(rate(minio_api_requests_duration_total[1m])) / sum(rate(minio_api_requests_total[1m]))",
          "refId": "A"
        }
      ],
      "options": {
        "reduceOptions": { "values": false, "calcs": ["mean"] },
        "orientation": "auto",
        "textMode": "auto"
      },
      "fieldConfig": {
        "defaults": { "unit": "ms", "color": { "mode": "thresholds" } }
      }
    },
    {
      "title": "Avg Read TTFB (p95)",
      "type": "stat",
      "gridPos": { "h": 4, "w": 3, "x": 12, "y": 0 },
      "targets": [
        {
          "expr": "histogram_quantile(0.95, sum(rate(minio_api_requests_ttfb_seconds_distribution{name=\"GetObject\"}[1m])) by (le))",
          "refId": "A"
        }
      ],
      "options": {
        "reduceOptions": { "values": false, "calcs": ["mean"] },
        "orientation": "auto",
        "textMode": "auto"
      },
      "fieldConfig": {
        "defaults": { "unit": "s", "color": { "mode": "thresholds" } }
      }
    },
    {
      "title": "Total Goroutines",
      "type": "stat",
      "gridPos": { "h": 4, "w": 3, "x": 15, "y": 0 },
      "targets": [
        {
          "expr": "sum(minio_system_process_go_routine_total)",
          "refId": "A"
        }
      ],
      "options": {
        "reduceOptions": { "values": false, "calcs": ["lastNotNull"] },
        "orientation": "auto",
        "textMode": "auto"
      },
      "fieldConfig": {
        "defaults": { "unit": "short", "color": { "mode": "thresholds" } }
      }
    },
    {
      "title": "Avg Net Sent / Recv",
      "type": "stat",
      "gridPos": { "h": 4, "w": 6, "x": 18, "y": 0 },
      "targets": [
        {
          "expr": "sum(rate(minio_api_requests_traffic_sent_bytes[1m]))",
          "legendFormat": "Sent",
          "refId": "A"
        },
        {
          "expr": "sum(rate(minio_api_requests_traffic_received_bytes[1m]))",
          "legendFormat": "Recv",
          "refId": "B"
        }
      ],
      "options": {
        "reduceOptions": { "values": false, "calcs": ["mean"] },
        "orientation": "horizontal",
        "textMode": "auto"
      },
      "fieldConfig": {
        "defaults": { "unit": "Bps", "color": { "mode": "thresholds" } }
      }
    },
    {
      "title": "Cluster TPS & Inflight Requests",
      "type": "timeseries",
      "gridPos": { "h": 8, "w": 12, "x": 0, "y": 4 },
      "targets": [
        {
          "expr": "sum(rate(minio_api_requests_total[1m]))",
          "legendFormat": "Total TPS",
          "refId": "A"
        },
        {
          "expr": "sum(minio_api_requests_inflight_total)",
          "legendFormat": "Inflight Requests",
          "refId": "B"
        }
      ],
      "fieldConfig": {
        "defaults": {
          "custom": { "drawStyle": "line", "lineInterpolation": "smooth" },
          "unit": "reqps"
        }
      }
    },
    {
      "title": "Cluster Drive IOPS (Read / Write)",
      "type": "timeseries",
      "gridPos": { "h": 8, "w": 12, "x": 12, "y": 4 },
      "targets": [
        {
          "expr": "sum(minio_system_drive_reads_per_sec)",
          "legendFormat": "Read IOPS",
          "refId": "A"
        },
        {
          "expr": "sum(minio_system_drive_writes_per_sec)",
          "legendFormat": "Write IOPS",
          "refId": "B"
        }
      ],
      "fieldConfig": {
        "defaults": {
          "custom": { "drawStyle": "line", "lineInterpolation": "smooth" },
          "unit": "iops"
        }
      }
    },
    {
      "title": "API Latency (Overall & Major APIs)",
      "type": "timeseries",
      "gridPos": { "h": 8, "w": 12, "x": 0, "y": 12 },
      "targets": [
        {
          "expr": "sum(rate(minio_api_requests_duration_total[1m])) / sum(rate(minio_api_requests_total[1m]))",
          "legendFormat": "Overall Avg Latency",
          "refId": "A"
        },
        {
          "expr": "sum(rate(minio_api_requests_duration_total[1m])) by (name) / sum(rate(minio_api_requests_total[1m])) by (name)",
          "legendFormat": "API: {{name}}",
          "refId": "B"
        }
      ],
      "fieldConfig": {
        "defaults": {
          "custom": { "drawStyle": "line" },
          "unit": "ms"
        }
      }
    },
    {
      "title": "Read TTFB Percentiles (GetObject p95 / p99)",
      "type": "timeseries",
      "gridPos": { "h": 8, "w": 12, "x": 12, "y": 12 },
      "targets": [
        {
          "expr": "histogram_quantile(0.95, sum(rate(minio_api_requests_ttfb_seconds_distribution{name=\"GetObject\"}[1m])) by (le))",
          "legendFormat": "Read TTFB p95",
          "refId": "A"
        },
        {
          "expr": "histogram_quantile(0.99, sum(rate(minio_api_requests_ttfb_seconds_distribution{name=\"GetObject\"}[1m])) by (le))",
          "legendFormat": "Read TTFB p99",
          "refId": "B"
        }
      ],
      "fieldConfig": {
        "defaults": {
          "custom": { "drawStyle": "line" },
          "unit": "s"
        }
      }
    },
    {
      "title": "Goroutine Count per Node",
      "type": "timeseries",
      "gridPos": { "h": 8, "w": 12, "x": 0, "y": 20 },
      "targets": [
        {
          "expr": "minio_system_process_go_routine_total",
          "legendFormat": "Node: {{server}}",
          "refId": "A"
        }
      ],
      "fieldConfig": {
        "defaults": {
          "custom": { "drawStyle": "line" },
          "unit": "short"
        }
      }
    },
    {
      "title": "Cluster Network Total Throughput (Send / Receive)",
      "type": "timeseries",
      "gridPos": { "h": 8, "w": 12, "x": 12, "y": 20 },
      "targets": [
        {
          "expr": "sum(rate(minio_api_requests_traffic_sent_bytes[1m]))",
          "legendFormat": "Network Sent",
          "refId": "A"
        },
        {
          "expr": "sum(rate(minio_api_requests_traffic_received_bytes[1m]))",
          "legendFormat": "Network Received",
          "refId": "B"
        }
      ],
      "fieldConfig": {
        "defaults": {
          "custom": { "drawStyle": "line" },
          "unit": "Bps"
        }
      }
    },
    {
      "title": "Disk Read Latency TopK / BottomK (Await ms)",
      "type": "timeseries",
      "gridPos": { "h": 8, "w": 12, "x": 0, "y": 28 },
      "targets": [
        {
          "expr": "topk(5, minio_system_drive_reads_await)",
          "legendFormat": "Top 5 Slowest: {{server}} - {{drive}}",
          "refId": "A"
        },
        {
          "expr": "bottomk(5, minio_system_drive_reads_await)",
          "legendFormat": "Bottom 5 Fastest: {{server}} - {{drive}}",
          "refId": "B"
        }
      ],
      "fieldConfig": {
        "defaults": {
          "custom": { "drawStyle": "line" },
          "unit": "ms"
        }
      }
    },
    {
      "title": "Node Network Usage (bond0, bond1 via Node Exporter)",
      "type": "timeseries",
      "gridPos": { "h": 8, "w": 12, "x": 12, "y": 28 },
      "targets": [
        {
          "expr": "sum(rate(node_network_receive_bytes_total{device=~\"bond0|bond1\"}[1m])) by (device, instance)",
          "legendFormat": "Rx - {{instance}} ({{device}})",
          "refId": "A"
        },
        {
          "expr": "sum(rate(node_network_transmit_bytes_total{device=~\"bond0|bond1\"}[1m])) by (device, instance)",
          "legendFormat": "Tx - {{instance}} ({{device}})",
          "refId": "B"
        }
      ],
      "fieldConfig": {
        "defaults": {
          "custom": { "drawStyle": "line" },
          "unit": "Bps"
        }
      }
    },
    {
      "title": "TCP Retransmit Rate (Segments / sec)",
      "type": "timeseries",
      "gridPos": { "h": 8, "w": 12, "x": 0, "y": 36 },
      "targets": [
        {
          "expr": "rate(node_netstat_Tcp_RetransSegs[1m])",
          "legendFormat": "Retransmit Rate - {{instance}}",
          "refId": "A"
        }
      ],
      "fieldConfig": {
        "defaults": {
          "custom": { "drawStyle": "line" },
          "unit": "pps"
        }
      }
    },
    {
      "title": "Network Packet Drops per Node/Device",
      "type": "timeseries",
      "gridPos": { "h": 8, "w": 12, "x": 12, "y": 36 },
      "targets": [
        {
          "expr": "sum(rate(node_network_receive_drop_total{device=~\"bond0|bond1\"}[1m]) + rate(node_network_transmit_drop_total{device=~\"bond0|bond1\"}[1m])) by (device, instance)",
          "legendFormat": "Drop Rate - {{instance}} ({{device}})",
          "refId": "A"
        }
      ],
      "fieldConfig": {
        "defaults": {
          "custom": { "drawStyle": "line" },
          "unit": "pps"
        }
      }
    }
  ],
  "refresh": "10s",
  "schemaVersion": 38,
  "style": "dark",
  "tags": ["minio", "aistor", "prometheus-v3"],
  "time": {
    "from": "now-24h",
    "to": "now"
  },
  "title": "MinIO AIStor V3 Cluster Performance Dashboard",
  "uid": "minio-aistor-v3"
}

0개의 댓글