ApeCloud
博客开源社区关于我们
对象存储
开源

在 Kubernetes 上部署 S3 兼容的高性能对象存储

KubeBlocks MinIO Operator 提供企业级对象存储服务,完全兼容 AWS S3 API,支持 Erasure Coding 纠删码保障数据持久性,与 KubeBlocks 备份系统深度集成,是私有化备份存储的首选方案。

访问 GitHub

4+

最小节点数(生产)

100%

开源免费

2 步部署生产级 MinIO Operator

1

安装 KubeBlocks

# 添加 Helm 仓库
helm repo add kubeblocks https://apecloud.github.io/helm-charts
helm repo update

# 安装 KubeBlocks
helm install kubeblocks kubeblocks/kubeblocks \
  --namespace kb-system --create-namespace
2

创建 MinIO Operator 集群

apiVersion: apps.kubeblocks.io/v1
kind: Cluster
metadata:
  name: minio-cluster
  namespace: demo
spec:
  terminationPolicy: Delete
  componentSpecs:
    - name: minio
      componentDef: minio
      replicas: 4
      serviceVersion: "2025.10.15"

核心能力

AWS S3 API 完全兼容

与 AWS S3 API 完全兼容,现有使用 S3 SDK 的应用无需修改即可对接 MinIO,迁移成本极低。

Erasure Coding 数据保护

基于纠删码技术,对称单盘部署下最多半数节点故障仍可恢复完整数据,持久性 99.999999999%。

KubeBlocks 备份深度集成

与 KubeBlocks 数据保护模块原生集成,一键配置 MySQL、PostgreSQL 等数据库备份存储目标。

Web Console + TLS

内置 Web 控制台(:9001)可视化管理 Bucket 与对象,支持 S3 API 与控制台的 TLS 加密通信。


部署拓扑

分布式纠删码集群

KubeBlocks 将 MinIO 部署为分布式集群,所有节点对等,数据通过纠删码分散在所有节点上。对称单盘部署下,最多半数节点同时故障数据仍完整可恢复。

Erasure Coding
S3 兼容
Web Console
TLS
关键特性

所有节点对等,无主从之分,无单点故障

纠删码将数据与奇偶校验块分散到所有节点,对称部署下最多半数节点故障仍可恢复

S3 API(:9000)完全兼容 AWS S3,现有应用零改造接入

内置 Web 控制台(:9001),可视化浏览 Bucket、管理对象与配置用户

通过 Kubernetes Headless Service DNS 实现节点发现,无需外部协调组件

应用 / 客户端
S3 API  minio-cluster-minio:9000
控制台  minio-cluster-minio:9001
S3 API + 控制台流量 → 全部 Pod(轮询)
Kubernetes 服务
minio-cluster-minio
ClusterIP · :9000 S3 API · :9001 控制台
全部 Pod(轮询)
无主节点 — 对称集群
S3 API + 控制台
→ 任意 Pod(对称,无主节点)
minio-0节点
🗄️
minio
:9000 S3 API + metrics (/minio/v2/metrics/cluster) · :9001 控制台
💾 PVC data-0 · 100Gi (对象存储)
minio-1节点
🗄️
minio
:9000 S3 API + metrics (/minio/v2/metrics/cluster) · :9001 控制台
💾 PVC data-1 · 100Gi (对象存储)
minio-2节点
🗄️
minio
:9000 S3 API + metrics (/minio/v2/metrics/cluster) · :9001 控制台
💾 PVC data-2 · 100Gi (对象存储)
+minio-3  —  配置相同 · 100Gi PVC · 同为节点角色
Reed-Solomon 纠删码EC 比例由 MinIO 根据磁盘数量自动确定 · 例如 8 节点布局下 EC:4(4 个校验盘)· 实际参数因拓扑而异
🔗无头服务 — 内部稳定 Pod DNS(复制、HA 心跳、Operator 探针),非客户端入口
S3 API 流量
分布式节点(对称)
持久化存储

常见问题

KubeBlocks MinIO Operator 支持哪些 MinIO 版本?

KubeBlocks MinIO Operator 支持 MinIO 2024.6.29 和 2025.10.15 两个版本。

MinIO 生产部署最少需要几个节点?

MinIO Erasure Coding 要求偶数个节点。生产环境推荐最少 4 节点,在对称单盘部署下可容忍 2 节点同时故障而不丢数据。节点数越多,数据持久性越高。

如何访问 MinIO Web 控制台?

MinIO Web 控制台运行在 :9001 端口,可通过 KubeBlocks OpsRequest(Expose 类型)创建 LoadBalancer 服务暴露,或使用 kubectl port-forward 在本地访问。S3 API 运行在 :9000 端口。

KubeBlocks MinIO Operator 是否免费?

KubeBlocks开源版完全开源免费。KubeBlocks企业版 提供图形化控制台与商业支持等增值功能。