RustFS 高性能对象存储
RustFS 是用 Rust 编写的高性能分布式对象存储系统,兼容 S3 API,可平滑迁移并与 MinIO、Ceph 等平台共存,面向数据湖、AI 与大数据场景,采用 Apache-2.0 许可。
爱鲜报评分
0 人评分
35k
星数
是
中文
Rust
主语言
是
活跃
192
贡献者
人工分析
EDITORIAL推荐理由
RustFS 用 Rust 重写了对象存储的核心路径,在内存安全与性能上具备天然优势,同时保持对 S3 API 的广泛兼容,迁移成本低。Apache-2.0 许可比 AGPL 更宽松,适合商业闭源集成。项目已提供分布式模式、版本控制、对象锁、KMS、桶复制、生命周期管理等较完整的企业级能力,并附带 K8s Helm Chart 与 Web 控制台,适合作为自建对象存储的候选方案。
适用场景
- 自建 S3 兼容对象存储,替代或补充 MinIO/Ceph
- AI 训练与推理的数据湖存储底座
- 大数据分析场景的高吞吐存储层
- Kubernetes 云原生环境下的持久化对象存储
- 多集群/多云之间的桶复制与站点容灾
优点
- Rust 实现,性能与内存安全兼顾,资源占用相对可控
- S3 API 兼容度较高,迁移与工具链接入成本低
- Apache-2.0 许可,商业使用与二次开发限制少
- 功能覆盖较全:版本控制、对象锁、KMS、复制、ILM、事件通知等
- 提供 K8s Helm Chart、Web 控制台与多语言文档,部署运维友好
缺点
- S3 Tables、MinIO 磁盘格式兼容等仍处于 Preview 阶段,生产使用需谨慎评估
- Swift API、SFTP 等能力需通过编译特性开启,默认构建不包含
- MinIO 加密对象无法被 RustFS 读取,混合部署时需注意数据兼容性
- 分布式大规模部署的调优与故障排查仍需要一定存储运维经验
RustFS 是什么
RustFS 是一个用 Rust 编写的高性能、分布式对象存储系统。它把 MinIO 式的简单易用与 Rust 的内存安全和性能结合起来,提供广泛的 S3 API 兼容能力,并针对数据湖、AI 与大数据负载做了优化。项目采用 Apache-2.0 许可,相比 AGPL 更利于商业集成与二次开发。
核心特性
- 高性能:基于 Rust 实现,追求更高的吞吐与更低的资源开销。
- 分布式架构:可扩展、具备容错能力,适合大规模部署。
- S3 兼容:可与常见 S3 客户端和工具链对接,方便迁移。
- OpenStack 生态:原生支持 Swift API 与 Keystone 认证。
- 数据湖友好:面向高吞吐的大数据与 AI 工作负载优化。
功能覆盖情况
项目 README 中给出了功能状态表,主要能力包括:
| 能力 | 状态 |
|---|---|
| S3 核心功能、上传下载 | 可用 |
| 分布式模式 / 单节点模式 | 可用 |
| 版本控制、对象锁(WORM) | 可用 |
| 服务端加密、RustFS KMS | 可用 |
| 桶复制、站点复制 | 可用 |
| 生命周期管理(ILM)、远程 S3 分层 | 可用 |
| IAM / 策略、OIDC / SSO、Keystone 认证 | 可用 |
| Web 控制台、K8s Helm Charts | 可用 |
| S3 Tables(Iceberg REST) | 预览 |
| MinIO 磁盘格式兼容 | 预览 |
需要注意:Swift API 与 SFTP 属于可选的编译特性,默认构建不包含;MinIO 磁盘格式兼容由 rio-v2 特性控制,且 MinIO 加密过的对象无法被 RustFS 读取。
部署与使用
RustFS 提供单节点与分布式两种运行模式,官方文档中给出了安装与快速开始指引,并配套 K8s Helm Chart 与 Web 控制台。典型使用方式是把它作为 S3 兼容端点接入现有应用:
# 示意:以 S3 客户端访问 RustFS 端点
aws --endpoint-url http://<rustfs-host>:<port> s3 ls
具体安装命令、端口与配置参数请以官方文档为准。
适用与取舍
RustFS 适合希望自建 S3 兼容存储、又在意许可宽松度与性能表现的团队。若你正在使用 MinIO 或 Ceph,可以把它作为迁移目标或共存方案来评估;但对仍处于预览阶段的能力(如 S3 Tables、MinIO 磁盘格式兼容),建议先在测试环境验证再上生产。
评论
- 暂无评论,来写第一条吧。