一句话定位RustFS 是面向 AI 时代、从零原生打造的高性能分布式对象存储100% 兼容 S3 APIApache 2.0 协议底层用 Rust 构建可作为 MinIO 的 drop-in 替代方案。目录1. 问题背景容量不够了加盘还是加池2. volumes 语法基础位置参数与省略号3. 单节点多盘与省略号展开4. 多池扩容空格分隔的端点组5. 落地注记6. 总结与下一步1. 问题背景容量不够了加盘还是加池RustFS 跑了一阵最常被问到的一类问题是怎么扩容。但扩容有两个意思同机加几块盘单节点多盘还是跨机器加一组新节点多池 / 分布式。这两种写法都落在同一个入口——volumes——区别只是你往里填的是本地路径、还是带省略号展开的一串端点。把这套语法摸清扩容时不用每次翻文档。下面的写法与解析规则都对照官方 CLI 参考核对过。2. volumes 语法基础位置参数与省略号卷通过位置参数或RUSTFS_VOLUMES环境变量传入以空格分隔。核心是{N...M}省略号展开# 位置参数写法 rustfs server /data/rustfs{0...3} # 等价的环境变量写法Docker / 编排里更常用 export RUSTFS_VOLUMES/data/rustfs{0...3} rustfs server解析规则有三条硬约束写错集群起不来范围格式{N...M}N与M是十进制或十六进制正整数且M必须大于N。单个标记可以包含多个范围例如主机范围 磁盘范围所有组合都会展开。单个范围最多展开为10000个条目。Docker 镜像默认卷是/data不显式写 volumes 也能起但生产环境建议把布局写清楚。几种常见写法一键对照3. 单节点多盘与省略号展开单节点、多块盘是最常见的起步形态。一行省略号把四块盘都声明出来# 展开为 /data/rustfs0 /data/rustfs1 /data/rustfs2 /data/rustfs3 rustfs server /data/rustfs{0...3}挂载目录要让容器内的运行用户可读写。RustFS 官方镜像以非 root 身份运行宿主目录先chown再起容器更省事sudo chown -R 10001:10001 /data/rustfs0 /data/rustfs1 /data/rustfs2 /data/rustfs3多节点分布式只是把路径换成带主机范围的端点省略号同时展开主机和磁盘# 4 节点 × 4 盘跨主机和跨盘双范围同时展开 rustfs server http://node{1...4}:9000/data/rustfs{0...3}4. 多池扩容空格分隔的端点组池在 RustFS 里就是一组独立的卷声明。多个池用空格分隔——每一个空格分隔的项形成一个独立的展开组# 两个池前 4 节点一组后 4 节点一组 rustfs server http://node{1...4}:9000/data/rustfs{0...3} \ http://node{5...8}:9000/data/rustfs{0...3}走环境变量时把同样的字符串写进RUSTFS_VOLUMES即可export RUSTFS_VOLUMEShttp://node{1...4}:9000/data/rustfs{0...3} http://node{5...8}:9000/data/rustfs{0...3} rustfs server容量告警时先判断走哪条路同机有空槽就加盘跨机器才加池。5. 落地注记池布局在启动时确定多池是声明式的规划阶段就把所有池写进 volumes。已运行的单节点若要转成多池 / 分布式需要先备份数据、按官方指引全新起集群再导入——直接往运行中的单节点追加节点不在支持范围内官方讨论区已说明单节点与分布式数据布局不兼容。多节点凭据要显式集群凭据全用默认值时必须显式设置RUSTFS_RPC_SECRET否则节点间 RPC 验证会出问题。EC 容错范围节点在纠删码容错数量内宕机集群照常服务换盘重启后自愈会自动重建。具体能扛几台取决于你的 EC data/parity 配比。版本边界写作时 RustFS 最新标签是1.0.0-rc.12026 年 8 月 8 日发布仍处 RC 阶段。volumes 语法在启动期生效与版本成熟度无关但生产落地前固定镜像标签、先在预演集群验证更稳妥。6. 总结与下一步扩容写法可以很短1.单节点加盘→ 改大{N...M}范围或追加本地路径注意M N、单范围不超 10000。2.跨机器加池→ 用空格再写一个端点组每组各自展开。3.运行中集群要变布局→ 先备份全新起集群再导入不要原地追加节点。验证展开是否符合预期直接看启动日志里的 volumes 解析或用rustfs info --all --json核对生效配置docker exec rustfs rustfs info --all --json | grep -i volumesRustFS 的源码与 issue 都在 GitHub 上https://github.com/rustfs/rustfsvolumes 与分布式相关的语法随版本更新落地前以官方文档当前版本为准。以下是深入学习 RustFS 的推荐资源RustFS官方文档 RustFS 官方文档- 提供架构、安装指南和 API 参考。GitHub 仓库 GitHub 仓库 - 获取源代码、提交问题或贡献代码。社区支持 GitHub Discussions- 与开发者交流经验和解决方案。意见反馈GitHub Issues