概述

了解 RustFS Operator 如何在 Kubernetes 上管理 RustFS 集群。

RustFS Operator 将 Kubernetes Operator 模式应用于 RustFS 集群。你无需手动创建 StatefulSet、Service、PersistentVolumeClaim(PVC)和配置,只需将所需的存储集群声明为 Kubernetes 自定义资源。控制器会监视该资源,并持续协调运行中集群与声明状态,使二者保持一致。

Operator 会安装两个 Custom Resource Definition(CRD):

  • Tenantrustfs.com/v1alpha1)表示一个 RustFS 集群。它定义存储池、凭证、调度、传输层安全性(TLS)和密钥管理服务(KMS)设置。
  • PolicyBindingsts.rustfs.com/v1alpha1)在工作负载从 Operator Security Token Service(STS)请求临时凭证时,将 Kubernetes ServiceAccount 映射到 RustFS 策略。

一个 Operator 可以跨命名空间管理多个租户。每个租户都有独立的存储、凭证、S3 和控制台服务以及生命周期。Operator 为每个存储池创建一个 StatefulSet,因此你可以通过追加存储池来扩容,而无需重建集群。它还会报告 ReadyProgressingDegraded 状况以及 Kubernetes Event,并公开用于集群监控的健康检查和指标端点。

同一套 API 同时适用于小型测试集群和分布式部署。敏感凭证和 KMS 材料保存在 Kubernetes Secret 中,纳入版本控制的 Tenant manifest 仅包含 Secret 引用。这让部署可重复执行,支持 GitOps 工作流,并可通过 Kubernetes 原生工具完成多租户管理、存储池扩容、TLS 和加密等日常操作。

Operator 工作流

  • 安装介绍环境要求、Helm 安装、控制台访问和 TLS 配置。
  • 多租户为不同团队或工作负载创建相互隔离的 RustFS 集群。
  • 存储池扩容通过向现有租户追加存储池来增加存储容量。
  • KMS 集成为加密数据配置本地或 HashiCorp Vault 密钥管理。

预发布软件

RustFS Operator 目前是正在积极开发的 v0.1.0 预发布软件。请先在非生产集群中验证升级和租户变更。

本页目录