高性能分布式对象存储RustFS
简介
什么是 RustFS ?
RustFS
是一款使用Rust
语言构建的高性能分布式对象存储软件。 它与MinIO
有许多共同的优点,例如简单性、S3
兼容性、开源特性以及对数据湖、人工智能和大数据等的支持。 此外,与其他存储系统相比,它拥有更好、更用户友好的开源许可证(Apache
许可证)。 由于以Rust
为基础,RustFS
为高性能对象存储提供了更快的速度和更安全的分布式特性。
注意: 该项目目前正处于快速开发阶段,请勿在生产环境中使用。
主要特点
- 高性能: 使用
Rust
构建,确保了速度和效率。 - 分布式架构: 可扩展且容错的设计,适用于大规模部署。
- S3 兼容性: 与现有的
S3
兼容应用程序无缝集成。 - 数据湖支持: 针对大数据和
AI
工作负载进行了优化。 - 开源: 在
Apache 2.0
许可下发布,鼓励社区贡献和透明度。 - 用户友好: 设计简洁,易于部署和管理。
应用场景
- 可作为自建的
S3
兼容对象存储服务。 - 适用于
AI
、大数据和数据湖等需要高性能读取的场景。 - 构建可扩展的私有云盘或企业级存储解决方案。
- 作为云原生应用的高性能存储后端。
RustFS
通过其高性能和灵活性,成为一个理想的对象存储解决方案,适用于多种场景。
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 rustfs
,选择 rustfs/rustfs
,版本选择 latest
。
本文写作时,
latest
版本介于1.0.0-alpha.42
和1.0.0-alpha.43
之间。
卷
在 docker
文件夹中,创建一个新文件夹 rustfs
,并在其中建立两个子文件夹 data
和 logs
。
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/rustfs/data | /data | 存放上传的对象数据 |
docker/rustfs/logs | /logs | 存放应用日志 |
端口
本地端口不冲突就行,不确定的话可以用命令查一下
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 | 容器端口 |
---|---|
9902 | 9000 |
命令行安装
如果你熟悉命令行,可能用 docker cli
或 docker-compose
更快捷。
Docker CLI
# 新建文件夹 rustfs 和 子目录
mkdir -p /volume1/docker/rustfs/{data,logs}# 进入 rustfs 目录
cd /volume1/docker/rustfs# 运行容器
docker run -d \--restart unless-stopped \--name rustfs \-p 9902:9000 \-v $(pwd)/data:/data \-v $(pwd)/logs:/logs \rustfs/rustfs:latest
Docker Compose
将下面的内容保存为 docker-compose.yml
文件。
version: '3'services:rustfs:image: rustfs/rustfs:latestcontainer_name: rustfsrestart: unless-stoppedports:- "9902:9000"volumes:- ./data:/data- ./logs:/logs
然后执行下面的命令。
# 新建文件夹 rustfs 和 子目录
mkdir -p /volume1/docker/rustfs/{data,logs}# 进入 rustfs 目录
cd /volume1/docker/rustfs# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d
运行
在浏览器中输入 http://群晖IP:9902
就能看到 RustFS 的控制台界面。
默认的用户名和密码均为:
rustfsadmin
登录成功后的主界面
右上角 创建存储桶
输入存储桶名称,点击 创建 完成存储桶的创建
点击创建的存储桶
就可以建目录、传文件了
照片可以直接预览
性能中可以看到 RustFS
的概览
参考文档
rustfs/rustfs: 🚀 High-performance distributed object storage for MinIO alternative.
地址:https://github.com/rustfs/rustfs
RustFS 下载安装
地址:https://rustfs.com/download/
RustFS
地址:https://docs.rustfs.com/zh/