文章

自建 S3 存储又多一个:RustFS 1.0 正式 GA,先别急着替掉 MinIO

静水流深 18小时前 · 1,487 字 · 约 5 分钟 · 22 次阅读
我发布了文章:《自建 S3 存储又多一个:RustFS 1.0 正式 GA,先别急着替掉 MinIO》

它是什么

RustFS 把对象存储用 Rust 重写了一遍,Apache 2.0 开源,走 S3 API。9 月 16 日 1.0.0 GA 发布,官方给的时间线是:2024 年 2 月写下第一行代码,2025 年 7 月开源,2026 年 4 月进 Beta,8 月 RC,9 月才 GA。官方自述的数据是 32,000+ GitHub star、1,000 万+ Docker Hub 拉取、270 万+ 部署实例、160+ 贡献者——这些数字看量级就好,它们证明的是热度,不是你的场景跑得稳。

对站长真正有用的几点

一是 S3 兼容是认真的:桶和对象的完整生命周期管理、大文件分片上传、纠删码(官方点名 Reed-Solomon)、数据分层、生命周期策略都在 1.0 的清单里,另外还挂了 WebDAV、Swift、FTP/FTPS,甚至 MCP。二是高可用不是一句口号:分布式部署、池扩容、数据再平衡、节点自愈、站点复制与桶复制都写进了功能表。三是运维面给得挺全:IAM、OIDC、KMS、服务端加密、STS、mTLS、安全审计,加上 OpenTelemetry、事件通知、容量统计、集群健康检查和多租户。四是它在往 AI 数据面靠:S3 Tables 把 Apache Iceberg REST Catalog 做进了存储内核,这个方向对做数据集的同学有点意思。

先跑起来看看

下载页 覆盖 Linux(DEB/RPM)、Docker、Compose、Kubernetes,macOS 和 Windows 也能装;命令行客户端叫 rc,Homebrew 和 Scoop 都有;文档站 提供简体中文。官方博客给的最快路径是这个 compose 文件:

git clone git@github.com:rustfs/rustfs.git
cd rustfs
docker compose -f docker-compose-simple.yml up -d

跑之前一定把 RUSTFS_ACCESS_KEY 和 RUSTFS_SECRET_KEY 从默认的 rustfsadmin 改掉,然后浏览器打开 http://ip:9001 进控制台。这是官方原文里唯一特意提醒的一句,别偷懒——默认密钥的对象存储暴露在公网上,跟把数据库端口敞开没什么区别。

我的判断

值得试,但别在 GA 第一周就把它放到唯一的备份位上。理由很直接:从 RC 到 GA 只隔了一个月,“production-ready”是官方对自己的评价,不是别人替你验证过的结果;官方主页宣称可以直接替换 MinIO(换二进制或容器镜像即可),这类话必须自己用 rclone 或 mc 完整跑一遍读写、列举、桶复制和恢复才算数;分布式高可用要的是多节点多盘加上纠删码规划,你在一台 2C4G 小机上跑起来的那一个实例,解决的是“有没有 S3 可用”,不是“会不会丢数据”。

适合它的活:图床和静态资源、备份与归档的目标端、给 ClickHouse、Prometheus 这类本来就吃 S3 协议的工具当存储层,以及给 AI 项目放数据集。不适合的活:只有一台小机却指望它扛核心单点,或者团队里没人愿意盯集群状态。

三步验证法

  1. 找一台闲置小机按上面的 compose 起单机实例,换掉默认密钥,控制台只监听内网或加一层 HTTPS;
  2. 用你日常在用的工具(rclone、mc,或者应用自带的 S3 SDK)做一次完整的写入、列举、断点续传和删除,再故意停掉容器看能否正常恢复;
  3. 确认可用之后再谈扩容:先用官方的纠删码计算器和配置生成器把盘数和节点数算清楚,再决定是一机多盘还是多机多盘。

最后提醒一句:对象存储解决的是“放哪儿”,备份策略解决的是“还有没有第二份”。这两件事别混为一谈,多一层异地副本才是真正兜底的东西。

登录 后参与评论

还没有人评论,来抢沙发