#1 Grok
MinIO(AIStor 기반) S3 호환 스토리지를 운영 중인 Kubernetes 클러스터의 성능을 종합적으로 모니터링하기 위해, 다음과 같은 지표들을 시각화합니다:
MinIO는 특정 클러스터 및 네임스페이스로 필터링하고, 나머지 컴포넌트는 노드별 비교가 가능하도록 구성됩니다.
시스템 구성 예시:
네임스페이스 기준 필터링 (예: minio 네임스페이스)
주요 지표:
네트워크 병목 예측: 50Gbps 이상 처리량 접근 시 주의
→ 클러스터 내 노드 간 비교 가능
다음 대상에서 메트릭 수집 필요:
/minio/v2/metrics/cluster)Prometheus 데이터소스 연동
MinIO에서 Prometheus 인증 방식 설정
mc admin config set myminio prometheus
Cluster: 클러스터 필터링 (예: production)Namespace: MinIO 네임스페이스 필터링Node: 다중 선택 가능 (노드별 비교)| 항목 | 지표(PromQL) |
|---|---|
| S3 요청 속도 | minio_api_requests_total |
| S3 처리량 | minio_api_requests_traffic_received_bytes |
| S3 지연 시간 | minio_api_requests_duration_seconds (P99) |
| 스토리지 사용량 | minio_cluster_capacity_raw_total_bytes |
| 오류 | minio_api_requests_errors_total |
| 항목 | 지표(PromQL) |
|---|---|
| API 요청 수 | apiserver_request_total |
| etcd 지연 시간 | etcd_request_duration_seconds (P99) |
| DNS 요청 수 | coredns_dns_requests_total |
| DNS 지연 시간 | nodelocaldns_request_duration_seconds |
| 항목 | 지표(PromQL) |
|---|---|
| CPU 사용률 | node_cpu_seconds_total |
| 메모리 사용률 | node_memory_MemAvailable_bytes |
| 디스크 I/O | node_disk_io_time_seconds_total |
| 네트워크 I/O | node_network_receive_bytes_total / transmit |
minio_k8s_monitoring_dashboard.json으로 저장 가능Grafana > Dashboard > Import 메뉴 진입
JSON 업로드 또는 붙여넣기
데이터소스 선택 (${DS_PROMETHEUS})
변수 구성:
MinIO 메트릭 미수집 시:
kubectl get svc -n minio
→ /minio/v2/metrics/cluster 노출 확인
DirectPV 메트릭 추가 (예시):
rate(directpv_drive_io_bytes_total{node=~"$node"}[5m])
네트워크 병목 지속 시:
이 대시보드는 MinIO, Kubernetes 제어 플레인, 노드 리소스 상태를 종합적으로 모니터링하며, Prometheus와 Grafana를 기반으로 제작됩니다. 클러스터 및 네임스페이스별 필터링 기능과 함께, 주요 병목 현상(예: 네트워크, etcd 지연, 디스크 부하)을 빠르게 식별할 수 있도록 설계되었습니다.
DirectPV 메트릭, 실제 클러스터 이름 등 추가 정보를 주시면 더 정교한 JSON으로 제공해드릴 수 있습니다.
이 Grafana 대시보드는 MinIO 오브젝트 스토리지와 Kubernetes 클러스터 인프라를 종합적으로 모니터링할 수 있도록 구성되어 있습니다. MinIO가 Kubernetes에서 실행되는 데이터 레이크하우스 환경을 운영하는 SRE 팀 및 플랫폼 엔지니어를 위한 설계입니다.
목적: MinIO S3 API 성능 및 스토리지 사용량 모니터링
주요 패널:
주요 PromQL 지표:
rate(minio_api_requests_total{namespace='$namespace', cluster='$cluster'}[5m])
rate(minio_api_requests_traffic_received_bytes{namespace='$namespace', cluster='$cluster'}[5m])
histogram_quantile(0.99, sum(rate(minio_api_requests_duration_seconds_bucket{namespace='$namespace', cluster='$cluster'}[5m])) by (le, operation))
minio_cluster_capacity_raw_total_bytes{namespace='$namespace', cluster='$cluster'} - minio_cluster_capacity_raw_free_bytes{namespace='$namespace', cluster='$cluster'}
목적: MinIO API 오류 및 문제 추적
주요 패널:
PromQL:
rate(minio_api_requests_errors_total{namespace='$namespace', cluster='$cluster'}[5m])
목적: 핵심 Kubernetes 구성 요소 및 인프라 모니터링
주요 패널:
PromQL:
rate(apiserver_request_total{cluster='$cluster'}[5m])
histogram_quantile(0.99, sum(rate(etcd_request_duration_seconds_bucket{cluster='$cluster'}[5m])) by (le))
rate(coredns_dns_requests_total{cluster='$cluster'}[5m])
histogram_quantile(0.99, sum(rate(nodelocaldns_request_duration_seconds_bucket{cluster='$cluster'}[5m])) by (le))
목적: 개별 노드의 성능 및 리소스 사용률 모니터링
주요 패널:
PromQL:
1 - avg(rate(node_cpu_seconds_total{mode='idle', instance=~'$node', cluster='$cluster'}[5m])) by (instance)
100 * (1 - node_memory_MemAvailable_bytes{instance=~'$node', cluster='$cluster'} / node_memory_MemTotal_bytes{instance=~'$node', cluster='$cluster'})
rate(node_disk_read_bytes_total{instance=~'$node', cluster='$cluster'}[5m])
rate(node_network_receive_bytes_total{instance=~'$node', device='bond0', cluster='$cluster'}[5m])
label_values(minio_api_requests_total, cluster)label_values(minio_api_requests_total{cluster='$cluster'}, namespace)label_values(node_cpu_seconds_total{cluster='$cluster'}, instance).*)DS_PROMETHEUS)#2 PERP
아래는 요청하신 요구(복수의 주요 K8s 시스템 부하, MinIO의 특정 네임스페이스/클러스터 중심, node별 전체 부하 비교, API server/etcd/coredns/nodelocaldns 부하 등)를 반영한 Grafana Dashboard 설계 json 예시입니다.
Prometheus 데이터 소스 기준으로 설계하였고, 실제 적용 시 metric 네이밍/라벨(특히 MinIO namespace/cluster label)은 환경에 맞게 조정해야 합니다.
$minio_cluster : MinIO 클러스터 명$minio_ns : MinIO 네임스페이스
disk_storage_used, s3_requests_total, s3_errors_total 등은 MinIO/AIStor Prometheus Exporter 기준입니다.instance(노드명/IP 등) 기준 집계로, 여러 node의 부하를 한눈에 비교.이 json을 그대로 Grafana에 Import한 뒤, 환경에 따라 metrics/label을 세부 수정하면
대규모 Data Lake House 환경에서 전체 부하와 MinIO(S3, Storage, IO, Error, 네임스페이스별)를 종합적으로 한눈에 진단할 수 있는 최적화된 대시보드가 구현됩니다.
이 Grafana 대시보드는 클라우드 네이티브 데이터 레이크하우스 환경에서 전체 시스템 부하와 MinIO 집중 모니터링을 위한 종합적인 모니터링 솔루션입니다. 특히 MinIO 객체 스토리지와 Kubernetes 인프라의 성능을 통합적으로 모니터링하도록 설계되었습니다.
목적: 선택된 클러스터/네임스페이스의 MinIO 성능 및 상태 모니터링
주요 패널:
주요 메트릭:
sum(rate(s3_requests_total{cluster="$minio_cluster",namespace="$minio_ns"}[5m]))
sum(disk_storage_used{cluster="$minio_cluster",namespace="$minio_ns"}) / (1024*1024*1024)
sum(rate(minio_disk_read_ops_total{cluster="$minio_cluster",namespace="$minio_ns"}[5m]))
sum(rate(s3_errors_total{cluster="$minio_cluster",namespace="$minio_ns"}[5m]))
목적: Kubernetes 핵심 구성 요소의 성능 및 부하 모니터링
주요 패널:
주요 메트릭:
sum by(instance)(rate(apiserver_request_total[5m]))
histogram_quantile(0.9, sum(rate(apiserver_request_duration_seconds_bucket[5m])) by (le,instance)) * 1000
avg by(instance)(etcd_disk_wal_fsynctime_seconds) * 1000
목적: DNS 서비스의 성능 및 캐시 효율성 모니터링
주요 패널:
주요 메트릭:
sum by(instance)(rate(coredns_dns_request_count_total[5m]))
sum(rate(nodelocaldns_cache_hits_total[5m])) / sum(rate(nodelocaldns_cache_accesses_total[5m])) * 100
sum by(instance)(rate(coredns_dns_response_rcode_count_total{rcode!="NOERROR"}[5m]))
목적: 노드별 리소스 사용량 비교 및 성능 분석
주요 패널:
주요 메트릭:
100 * (1 - avg by (instance)(irate(node_cpu_seconds_total{mode="idle"}[5m])))
avg by (instance)((node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes) / (1024*1024*1024))
sum by(instance)(rate(node_disk_read_bytes_total[5m])) / (1024*1024)
sum by(instance)(rate(node_network_receive_bytes_total[5m])) / (1024*1024)
minio_cluster 변수로 클러스터 필터링minio_ns 변수로 네임스페이스 필터링label_values(minio_cluster_label)label_values(namespace, job='minio')이 대시보드는 클라우드 네이티브 데이터 레이크하우스 환경에서 MinIO 객체 스토리지와 Kubernetes 인프라의 통합 모니터링을 통해 고성능, 안정적인 운영을 보장하는 포괄적인 솔루션을 제공합니다.
===
#3 claude
MinIO 환경을 위한 종합적인 Grafana 대시보드를 만들어드리겠습니다. Kubernetes 클러스터와 MinIO의 부하 현황을 한눈에 볼 수 있도록 구성하겠습니다.MinIO와 Kubernetes를 종합적으로 모니터링할 수 있는 Grafana 대시보드를 만들어드렸습니다!
# Grafana UI에서 Import > 위 JSON 복사/붙여넣기
# prometheus.yml에서 다음 job 설정 필요
scrape_configs:
- job_name: 'kubernetes-apiservers'
- job_name: 'kubernetes-nodes'
- job_name: 'minio'
- job_name: 'etcd'
- job_name: 'coredns'
- job_name: 'node-local-dns'
# MinIO StatefulSet에 환경변수 추가
env:
- name: MINIO_PROMETHEUS_AUTH_TYPE
value: "public"
- name: MINIO_PROMETHEUS_URL
value: "https://prometheus.example.com"
이 대시보드로 MinIO에 대한 높은 요청 부하 상황에서 어디서 병목이 발생하는지, 각 컴포넌트가 어떻게 반응하는지를 한눈에 파악할 수 있습니다!
특정 패널을 수정하거나 추가 메트릭이 필요하시면 언제든 말씀해 주세요! 🎯
다음은 요청하신 문서의 한글 번역본입니다:
이 Grafana 대시보드는 MinIO 오브젝트 스토리지와 Kubernetes 인프라에 대한 통합 모니터링을 제공합니다. Kubernetes에서 MinIO가 실행되는 데이터 레이크하우스 환경에서 시스템의 전반적인 상태와 성능을 모니터링해야 하는 SRE 팀과 플랫폼 엔지니어를 위해 설계되었습니다.
목적: 클러스터의 전반적인 상태와 가용성을 고수준에서 모니터링
주요 패널:
주요 메트릭:
up{job="kubernetes-apiservers"}
up{job="kubernetes-nodes"}
up{job="minio"}
minio_cluster_nodes_online_total{cluster="$cluster",namespace="$namespace"}
minio_cluster_drives_online_total{cluster="$cluster",namespace="$namespace"}
목적: 핵심 Kubernetes 구성 요소의 성능 모니터링
주요 패널:
주요 메트릭:
sum(rate(apiserver_request_total[5m])) by (verb, resource)
histogram_quantile(0.99, sum(rate(apiserver_request_duration_seconds_bucket[5m])) by (le, verb, resource))
sum(rate(etcd_server_requests_total[5m])) by (type)
sum(rate(coredns_dns_requests_total[5m])) by (type)
목적: 개별 노드의 성능과 자원 사용량 모니터링
주요 패널:
주요 메트릭:
100 - (avg by (instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)
(1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes)) * 100
sum by (instance) (rate(node_disk_read_bytes_total[5m]))
sum by (instance) (rate(node_network_receive_bytes_total{device!="lo"}[5m]))
목적: MinIO 스토리지의 전반적인 성능 모니터링
주요 패널:
주요 메트릭:
sum(rate(minio_s3_requests_total{cluster="$cluster",namespace="$namespace"}[5m])) by (api)
sum(rate(minio_s3_traffic_sent_bytes{cluster="$cluster",namespace="$namespace"}[5m])) by (instance)
histogram_quantile(0.99, sum(rate(minio_s3_ttfb_seconds_bucket{cluster="$cluster",namespace="$namespace"}[5m])) by (le, api))
minio_cluster_capacity_usable_free_bytes{cluster="$cluster",namespace="$namespace"}
sum(rate(minio_s3_requests_errors_total{cluster="$cluster",namespace="$namespace"}[5m])) by (api)
목적: DNS 성능 및 캐시 효율성 모니터링
주요 패널:
주요 메트릭:
sum(rate(coredns_cache_hits_total{job="node-local-dns"}[5m])) by (instance) / sum(rate(coredns_dns_requests_total{job="node-local-dns"}[5m])) by (instance) * 100
label_values(minio_cluster_nodes_online_total, cluster)label_values(minio_cluster_nodes_online_total{cluster="$cluster"}, namespace)${DS_PROMETHEUS})#4 GAS
대시보드 설계 특징
상관관계 분석: 맨 위에는 MinIO의 부하 지표를, 그 아래에는 컨트롤 플레인, 핵심 서비스, 노드 리소스 지표를 배치하여 MinIO 트래픽이 급증할 때 다른 컴포넌트에 어떤 영향을 미치는지 시간순으로 쉽게 비교할 수 있습니다.
템플릿 변수:
namespace: MinIO가 설치된 네임스페이스를 선택합니다.
$node: 특정 노드들의 리소스 사용량을 비교할 수 있도록 다중 선택이 가능합니다.
가독성: 각 패널에 어떤 지표인지, 무엇을 의미하는지 한글로 상세한 설명을 추가하여 누구나 쉽게 이해할 수 있도록 했습니다.
최신 메트릭: node-local-dns와 같이 요청하신 특정 컴포넌트의 메트릭을 포함했습니다.
사전 준비 사항
이 대시보드가 정상적으로 동작하려면 Prometheus가 아래의 메트릭을 모두 수집하고 있어야 합니다.
MinIO Exporter: MinIO의 성능 메트릭 (minio*)
Kubernetes Components: kube-apiserver, kube-etcd, coredns
Node Exporter: 각 노드의 시스템 리소스 메트릭 (node)
NodeLocalDNS: nodelocaldns_ 메트릭 (배포된 경우)
Grafana 대시보드 임포트 방법
Grafana UI 왼쪽 메뉴에서 Dashboards로 이동합니다.
오른쪽 상단의 New 버튼을 누르고 Import를 선택합니다.
아래 JSON 코드를 전체 복사하여 "Import via panel json" 텍스트 박스에 붙여넣습니다.
Load 버튼을 누릅니다.
옵션 화면에서 대시보드 이름을 정하고, 가장 중요한 Prometheus 데이터소스를 선택합니다.
Import 버튼을 최종적으로 누르면 대시보드가 생성됩니다.
===
#5 GEM
네, 물론입니다. MinIO 부하 상황을 중심으로 Kubernetes 클러스터의 전반적인 상태를 한눈에 파악할 수 있는 그라파나(Grafana) 대시보드 구성을 자세히 안내해 드리겠습니다.
요청하신 내용을 바탕으로, "MinIO-Centric Cluster Overview"라는 이름의 종합 대시보드를 만들어 보겠습니다. 이 대시보드는 문제 발생 시 원인이 MinIO 자체에 있는지, 아니면 인프라(노드, 네트워크, 컨트롤 플레인)에 있는지 빠르게 판단하는 것을 목표로 합니다.
이 대시보드를 완벽하게 구현하려면, 그라파나의 데이터 소스인 프로메테우스(Prometheus)가 아래 메트릭들을 수집하고 있어야 합니다.
/minio/prometheus/metrics 엔드포인트를 통해 S3 트래픽, 스토리지 사용량 등 자체 성능 지표를 제공합니다. 프로메테우스가 이 엔드포인트를 수집하도록 설정해야 합니다. (필수)대시보드는 논리적인 흐름에 따라 여러 **행(Row)**으로 구성하여 가독성을 높입니다.
$cluster: 클러스터 필터$namespace: MinIO가 설치된 네임스페이스 필터$node: 비교하고 싶은 노드를 선택하는 필터 (다중 선택 가능)| 패널 제목 | 시각화 타입 | PromQL 쿼리 (예시) | 해석 |
|---|---|---|---|
| Total S3 Requests/sec | Stat / Gauge | sum(rate(minio_http_requests_total{namespace="$namespace"}[5m])) | MinIO로 들어오는 초당 총 S3 요청 수 |
| API Server Latency (99th) | Stat / Gauge | histogram_quantile(0.99, sum(rate(apiserver_request_latencies_bucket[5m])) by (le, verb)) | API 서버의 99% 요청 응답 시간 (ms) |
| Cluster CPU Usage | Gauge | 100 - (avg(rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100) | 클러스터 전체 노드의 평균 CPU 사용률 (%) |
| Cluster Memory Usage | Gauge | 100 * (1 - (sum(node_memory_MemAvailable_bytes) / sum(node_memory_MemTotal_bytes))) | 클러스터 전체 노드의 총 메모리 사용률 (%) |
| 패널 제목 | 시각화 타입 | PromQL 쿼리 (예시) | 해석 |
|---|---|---|---|
| API Server Request Rate | Time series | sum(rate(apiserver_request_total[5m])) by (code) | HTTP 상태 코드별 API 서버 요청 빈도 |
| etcd Leader Changes | Stat | changes(etcd_server_leader_changes_seen_total[1h]) | 지난 1시간 동안 etcd 리더 변경 횟수 (잦으면 불안정) |
| CoreDNS Latency (95th) | Time series | histogram_quantile(0.95, sum(rate(coredns_dns_request_duration_seconds_bucket[5m])) by (le)) | CoreDNS의 95% 요청 응답 시간 (ms) |
| NodeLocalDNS Cache | Time series | sum(rate(nodelocaldns_cache_hits_total[5m])) / sum(rate(nodelocaldns_cache_misses_total[5m])) | NodeLocalDNS의 캐시 히트/미스 비율 |
팁: 이 행의 패널들은 Grafana의
Repeat options기능을 사용하여 변수$node에 대해 반복되도록 설정하면, 선택한 모든 노드의 그래프가 자동으로 그려져 비교하기 매우 편리합니다.
| 패널 제목 | 시각화 타입 | PromQL 쿼리 (예시) | 해석 |
|---|---|---|---|
| CPU Usage | Time series | 100 - (avg by (instance) (rate(node_cpu_seconds_total{instance=~"$node", mode="idle"}[5m])) * 100) | 노드별 CPU 사용률. 특정 노드만 100%에 근접하는지 확인. |
| Memory Usage | Time series | 100 * (1 - (node_memory_MemAvailable_bytes{instance=~"$node"} / node_memory_MemTotal_bytes{instance=~"$node"})) | 노드별 메모리 사용률. |
| Disk I/O Utilization | Time series | rate(node_disk_io_time_seconds_total{instance=~"$node"}[5m]) | 노드별 디스크가 I/O 작업으로 바빴던 시간의 비율. 1에 가까우면 디스크가 포화상태임. |
| Network I/O | Time series | rate(node_network_receive_bytes_total{instance=~"$node", device!="lo"}[5m]) \<br> rate(node_network_transmit_bytes_total{instance=~"$node", device!="lo"}[5m]) | 노드별 네트워크 수신/송신 대역폭. |
팁: 이 행의 모든 패널 쿼리에
cluster="$cluster", namespace="$namespace"조건을 추가하여 원하는 MinIO 인스턴스만 필터링합니다.
| 패널 제목 | 시각화 타입 | PromQL 쿼리 (예시) | 해석 |
|---|---|---|---|
| S3 Traffic (by Pod) | Time series | sum(rate(minio_network_received_bytes_total{namespace="$namespace"}[5m])) by (pod) \<br> sum(rate(minio_network_sent_bytes_total{namespace="$namespace"}[5m])) by (pod) | 각 MinIO Pod별 수신/송신 트래픽. 부하가 특정 Pod에 쏠리는지 확인. |
| S3 Requests by API | Time series | sum(rate(minio_http_requests_total{namespace="$namespace"}[5m])) by (api) | API 종류별(GetObject, PutObject 등) 요청 수. 어떤 종류의 요청이 많은지 파악. |
| Total Storage Used | Gauge / Stat | minio_cluster_usage_raw_total{namespace="$namespace"} / minio_cluster_capacity_raw_total{namespace="$namespace"} | MinIO 클러스터의 총 사용량 및 용량 |
| Drives Status | Stat / Table | minio_cluster_drives_offline_total{namespace="$namespace"} \<br> minio_cluster_drives_online_total{namespace="$namespace"} | 온라인/오프라인 드라이브 수. 오프라인 드라이브가 있으면 장애 상황임. |
위 가이드를 따라 직접 패널을 하나씩 만들어보는 것이 가장 좋습니다. 익숙해지면, Grafana 공식 사이트의 Dashboards 섹션에서 'Kubernetes'나 'MinIO'로 검색하여 다른 사람들이 만들어 둔 대시보드 JSON 파일을 다운로드한 후, 위 쿼리들을 참고하여 자신의 환경에 맞게 수정하여 사용하는 것도 좋은 방법입니다.
이 대시보드를 통해 MinIO 요청이 많을 때, 그 부하가 시스템의 어느 부분에 영향을 미치는지 종합적으로 분석하고 신속하게 대응할 수 있을 것입니다.
===
이 Grafana 대시보드는 MinIO 오브젝트 스토리지를 운영하는 Kubernetes 클러스터에서의 성능 분석 및 문제 해결을 위해 설계되었습니다. 원인과 결과 중심의 분석 방식을 따르며, 성능 병목 현상과 그로 인한 시스템 전체 영향도를 파악할 수 있도록 돕습니다. 대시보드는 SRE 팀이 MinIO 부하와 클러스터 전반에 미치는 영향을 이해할 수 있도록 세 가지 논리적 섹션으로 구성되어 있습니다.
목적: MinIO API 트래픽 및 네트워크 처리량을 모니터링하여 성능 문제의 원인을 파악
주요 패널:
주요 PromQL:
sum(rate(minio_http_requests_total{cluster="$cluster", namespace="$namespace"}[$__rate_interval])) by (api)
sum(rate(minio_network_received_bytes_total{cluster="$cluster", namespace="$namespace"}[$__rate_interval]))
sum(rate(minio_network_sent_bytes_total{cluster="$cluster", namespace="$namespace"}[$__rate_interval]))
목적: MinIO 부하가 Kubernetes 핵심 인프라에 미치는 영향 모니터링
주요 패널:
주요 PromQL:
histogram_quantile(0.99, sum(rate(apiserver_request_duration_seconds_bucket{cluster="$cluster", verb!~"WATCH|CONNECT"}[$__rate_interval])) by (le, verb))
histogram_quantile(0.99, sum(rate(etcd_disk_wal_fsync_duration_seconds_bucket{cluster="$cluster"}[$__rate_interval])) by (le, instance))
histogram_quantile(0.99, sum(rate(coredns_dns_request_duration_seconds_bucket{cluster="$cluster"}[$__rate_interval])) by (le))
histogram_quantile(0.99, sum(rate(nodelocaldns_request_duration_seconds_bucket{cluster="$cluster"}[$__rate_interval])) by (le))
목적: MinIO 부하로 인해 각 노드 자원에 미치는 영향 모니터링
주요 패널:
주요 PromQL:
100 - (avg by (instance) (rate(node_cpu_seconds_total{cluster="$cluster", instance=~"$node", mode="idle"}[$__rate_interval])) * 100)
100 - (node_memory_MemAvailable_bytes{cluster="$cluster", instance=~"$node"} / node_memory_MemTotal_bytes{cluster="$cluster", instance=~"$node"} * 100)
sum by (instance) (rate(node_disk_io_time_seconds_total{cluster="$cluster", instance=~"$node"}[$__rate_interval])) * 100
sum by (instance) (rate(node_network_receive_bytes_total{cluster="$cluster", instance=~"$node", device!~'lo|veth.*|cbr.*|flannel.*|docker.*'}[$__rate_interval]))
각 패널은 다음 정보를 한국어로 제공:
datasourceclusterlabel_values(kube_pod_info, cluster)namespacelabel_values(minio_cluster_info{cluster="$cluster"}, namespace)nodelabel_values(node_cpu_seconds_total{cluster="$cluster"}, instance).*)${datasource})이 대시보드는 Kubernetes에서 MinIO를 운영하는 환경에서 성능 분석을 체계적으로 수행할 수 있도록 설계되어, 문제의 근본 원인을 신속히 식별하고 클러스터 전체에 미치는 영향을 명확하게 파악할 수 있게 합니다.