搭建 MinIO 对象存储

适用场景

需要 S3 兼容的对象存储,用于备份、日志、模型文件、Loki/Thanos/Velero 后端。MinIO 部署简单,支持分布式纠删码和多租户。

前置条件

步骤

  1. 使用 Helm 安装分布式 MinIO:
helm repo add minio https://charts.min.io/
helm install minio minio/minio \
  --namespace minio --create-namespace \
  --set mode=distributed \
  --set replicas=4 \
  --set persistence.size=100Gi \
  --set rootUser=admin \
  --set rootPassword='***'
kubectl -n minio get pods
  1. 使用 mc 连接:
mc alias set local http://minio:9000 admin '***'
mc admin info local
  1. 创建 bucket 和用户:
mc mb local/backups
mc admin user add local app '***'
mc admin policy attach local readwrite --user app
  1. 配置生命周期:
mc ilm rule add local/backups --expire-days 30
mc ilm rule ls local/backups
  1. 配置 TLS:
kubectl -n minio create secret tls minio-tls \
  --cert=public.crt --key=private.key
  1. 开启版本控制:
mc version enable local/backups

验证

回滚

常见坑

相关命令