mc监控MinIO提供的mc(MinIO Client)是轻量级命令行工具,可用于快速查看集群状态、存储桶信息和资源使用情况。
mc:通过YUM包管理器安装,命令为sudo yum install minio-client。mc别名:使用mc alias set命令设置MinIO服务器别名,便于后续操作。例如:mc alias set myminio http://<minio-server-ip>:9000 minioadmin minioadmin(替换为实际IP、访问密钥和秘密密钥)。mc admin info myminio(显示集群健康度、节点数量等信息);mc admin bucket stat myminio/mybucket(获取指定存储桶的对象数量、总大小、创建时间等);mc admin status myminio(显示服务器运行状态、CPU/内存占用等)。Prometheus(时间序列数据库)+Grafana(可视化工具)是生产环境主流监控方案,可实现MinIO指标的实时采集、存储、可视化及告警。
prometheus.yml配置文件,添加MinIO抓取任务(可通过mc admin prometheus generate命令生成配置)。例如:scrape_configs:
  - job_name: 'minio-cluster'
    bearer_token: YOUR_TOKEN  # 若启用了认证
    metrics_path: /minio/v2/metrics/cluster
    scheme: https  # 若启用TLS则用https,否则用http
    static_configs:
      - targets: ['minio-server-ip:9090']  # MinIO Prometheus端点端口
sudo yum install grafana),启动服务并设置开机自启(systemctl start grafana-server && systemctl enable grafana-server)。http://<grafana-ip>:3000,账号admin/admin),进入“Configuration→Data Sources”,添加Prometheus数据源(URL填写http://localhost:9090),测试连接后保存。7361,对应MinIO集群监控),在Grafana中点击“+”→“Dashboard”→“Import”,输入ID即可加载,展示集群状态、存储使用、节点性能等指标。alerting.yml,添加MinIO专用告警规则(如节点离线、磁盘空间不足)。例如:groups:
- name: minio-alerts
  rules:
  - alert: NodesOffline
    expr: avg_over_time(minio_cluster_nodes_offline_total[5m]) > 0
    for: 10m
    labels:
      severity: critical
    annotations:
      summary: "MinIO节点离线"
      description: "{{ $labels.instance }}节点已离线超过10分钟"
MinIO内置Web控制台,提供图形化界面,适合快速查看集群状态和存储信息。
--console-address参数指定控制台端口(默认9001)。例如:minio server /data --console-address ":9001"。http://<minio-server-ip>:9001,使用MinIO访问密钥(默认minioadmin)和秘密密钥(默认minioadmin)登录。MinIO提供RESTful API,可通过HTTP请求获取集群指标,适合自动化脚本或自定义监控工具集成。
curl命令访问MinIO的/metrics端点。例如:curl -u minioadmin:minioadmin http://<minio-server-ip>:9000/metrics(若启用了认证,需替换为实际密钥)。/minio/v2/metrics/cluster:集群级指标(如节点数量、存储总量);/minio/v2/metrics/node:节点级指标(如CPU、内存、磁盘使用);/minio/v2/metrics/bucket:存储桶级指标(如对象数量、存储用量)。通过Linux系统自带工具(如top、htop、iostat、netstat),可监控MinIO进程的资源使用情况,辅助排查性能瓶颈。
top命令结合pgrep过滤MinIO进程,命令为top -p $(pgrep minio)(显示CPU、内存占用);或使用htop(更直观,需安装:sudo yum install htop)。iostat命令(需安装sysstat包:sudo yum install sysstat),命令为iostat -x 1(显示磁盘读写速率、延迟等)。netstat命令,命令为netstat -tuln | grep 9000(显示MinIO服务端口的网络连接情况)。prometheus模块已启用(默认开启),若未开启,可通过mc admin config set myminio/ prometheus enabled=true命令开启;