RustFS 单节点搭建

根据 GitHub 的数据,RustFS 是增长最快的开源分布式对象存储项目。 RustFS 用热门安全的 Rust 语言开发,兼容 S3 协议,这意味着现有基于S3的应用可以无缝迁移,无需修改代码。适用于 AI/ML 及海量数据存储、大数据、互联网、工业和保密存储等全部场景,支持国产保密设备和系统。

  • 架构支持:裸金属与虚拟化、阿里云、腾讯云、华为云、国际云服务商
  • 产品功能:分布式存储、日志管理、版本控制、S3 兼容、对象级只读、跨区域复制、加密、生命周期管理

二进制安装

单机单盘配置 - 极简版

  • 如下极简版、自定义、二进制安装,适用于:Ubuntu 18.04+、CentOS 7+、其他 Linux 发行版
#.开始下载
mkdir -p /data/rustfs_9000/{data,logs}
curl -L http://iso.sqlfans.cn/linux/rustfs-linux-x86_64-1.0.0-alpha.71 -o /data/rustfs_9000/rustfs
chmod +x /data/rustfs_9000/rustfs

#.启动服务
export RUSTFS_ACCESS_KEY=rustfsadmin
export RUSTFS_SECRET_KEY=Admin_147
nohup /data/rustfs_9000/rustfs /data/rustfs_9000/data --console-address=":9001" > /data/rustfs_9000/logs/rustfs.log 2>&1 &

#.登录测试
地址:http://{ip}:9001
账号:rustfsadmin
密码:Admin_147

单机单盘配置 - 服务版

  • 如下自定义、二进制安装,适用于:Ubuntu 18.04+、CentOS 7+、其他 Linux 发行版

注1:示例的服务端口为 9000,web控制台端口为 9001,数据目录为 /data/rustfs_9000,若有独立磁盘请修改挂载目录

注2:官方的 一键安装脚本 仅适用于 SNSD(单机单盘) 模式的二进制快速安装

#.建议禁用防火墙
/usr/sbin/iptables -F
systemctl stop firewalld.service

#.开始下载
curl -L http://iso.sqlfans.cn/linux/rustfs-linux-x86_64-1.0.0-alpha.71 -o /usr/bin/rustfs
chmod +x /usr/bin/rustfs

#.创建配置目录
mkdir -p /var/logs/rustfs
mkdir -p /data/rustfs_9000

#.配置参数
DEFAULT_RUSTFS_VOLUME="/data/rustfs_9000"
RUSTFS_CONFIG_FILE="/etc/default/rustfs"
RUSTFS_BIN_PATH="/usr/bin/rustfs"
RUSTFS_LOG_PATH="/var/logs/rustfs"

#.创建配置文件,示例账号 rustfsadmin 密码 Admin_147
cat <<EOF > /etc/default/rustfs
RUSTFS_ACCESS_KEY=rustfsadmin
RUSTFS_SECRET_KEY=Admin_147
RUSTFS_VOLUMES="/data/rustfs_9000"
RUSTFS_ADDRESS=":9000"
RUSTFS_CONSOLE_ADDRESS=":9001"
RUSTFS_CONSOLE_ENABLE=true
RUST_LOG=error
RUSTFS_OBS_LOG_DIRECTORY="/var/logs/rustfs/"
EOF

#.创建服务文件
cat <<EOF > /usr/lib/systemd/system/rustfs.service
[Unit]
Description=RustFS Object Storage Server
Documentation=https://rustfs.com/docs/
After=network-online.target
Wants=network-online.target
[Service]
Type=notify
NotifyAccess=main
User=root
Group=root
WorkingDirectory=/usr/local
EnvironmentFile=-$RUSTFS_CONFIG_FILE
ExecStart=$RUSTFS_BIN_PATH $DEFAULT_RUSTFS_VOLUME
LimitNOFILE=1048576
LimitNPROC=32768
TasksMax=infinity
Restart=always
RestartSec=10s
OOMScoreAdjust=-1000
SendSIGKILL=no
TimeoutStartSec=30s
TimeoutStopSec=30s
NoNewPrivileges=true
ProtectHome=true
PrivateTmp=true
PrivateDevices=true
ProtectClock=true
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectControlGroups=true
RestrictSUIDSGID=true
RestrictRealtime=true
StandardOutput=append:$RUSTFS_LOG_PATH/rustfs.log
StandardError=append:$RUSTFS_LOG_PATH/rustfs-err.log
[Install]
WantedBy=multi-user.target
EOF

#.启动服务
systemctl daemon-reload
systemctl enable rustfs
systemctl start rustfs

#.确认端口已监听
netstat -lnpt | egrep "(9000|9001)"
  • 根据示例账号及密码,登录 web 控制台
#.登录测试
地址:http://{ip}:9001
账号:rustfsadmin
密码:Admin_147

单机多盘配置

  • 如下简化版、自定义、二进制安装,适用于:Ubuntu 18.04+、CentOS 7+、其他 Linux 发行版

注:示例的服务端口为 9000,web控制台端口为 9001,2块磁盘挂载目录为 /data/data1、/data/data2

#.建议禁用防火墙
/usr/sbin/iptables -F
systemctl stop firewalld.service

#.开始下载
curl -L http://iso.sqlfans.cn/linux/rustfs-linux-x86_64-1.0.0-alpha.71 -o /usr/bin/rustfs
chmod +x /usr/bin/rustfs

#.创建配置目录
mkdir -p /var/logs/rustfs
mkdir -p /data/{data1,data2}
chmod -R 750 /var/logs/rustfs
chmod -R 750 /data/data1 /data/data2

#.配置参数
RUSTFS_VOLUMES="/data/data1 /data/data2"
RUSTFS_CONFIG_FILE="/etc/default/rustfs"
RUSTFS_BIN_PATH="/usr/bin/rustfs"
RUSTFS_LOG_PATH="/var/logs/rustfs"

#.创建配置文件,示例账号 rustfsadmin 密码 Admin_147
cat <<EOF > /etc/default/rustfs
RUSTFS_ACCESS_KEY=rustfsadmin
RUSTFS_SECRET_KEY=Admin_147
RUSTFS_VOLUMES="/data/data1 /data/data2"
RUSTFS_ADDRESS=":9000"
RUSTFS_CONSOLE_ADDRESS=":9001"
RUSTFS_CONSOLE_ENABLE=true
RUST_LOG=error
RUSTFS_OBS_LOG_DIRECTORY="/var/logs/rustfs/"
EOF

#.创建服务文件
cat <<EOF > /usr/lib/systemd/system/rustfs.service
[Unit]
Description=RustFS Object Storage Server
Documentation=https://rustfs.com/docs/
After=network-online.target
Wants=network-online.target
[Service]
Type=notify
NotifyAccess=main
User=root
Group=root
WorkingDirectory=/usr/local
EnvironmentFile=-$RUSTFS_CONFIG_FILE
ExecStart=$RUSTFS_BIN_PATH $RUSTFS_VOLUMES
LimitNOFILE=1048576
LimitNPROC=32768
TasksMax=infinity
Restart=always
RestartSec=10s
OOMScoreAdjust=-1000
SendSIGKILL=no
TimeoutStartSec=30s
TimeoutStopSec=30s
NoNewPrivileges=true
ProtectHome=true
PrivateTmp=true
PrivateDevices=true
ProtectClock=true
ProtectKernelTunables=true
ProtectKernelModules=true
ProtectControlGroups=true
RestrictSUIDSGID=true
RestrictRealtime=true
StandardOutput=append:$RUSTFS_LOG_PATH/rustfs.log
StandardError=append:$RUSTFS_LOG_PATH/rustfs-err.log
[Install]
WantedBy=multi-user.target
EOF

#.启动服务
systemctl daemon-reload
systemctl enable rustfs
systemctl start rustfs

#.确认端口已监听
netstat -lnpt | egrep "(9000|9001)"
  • 根据示例账号及密码,登录 web 控制台
#.登录测试
地址:http://{ip}:9001
账号:rustfsadmin
密码:Admin_147

docker 安装

  • RustFS 的轻量级设计使其部署极为简便,其二进制包仅93MB(MinIO为320MB),支持 Docker 一键部署
docker pull rustfs:latest
docker run -d --name rustfs -p 9000:9000 -p 9001:9001 -v /mnt/ssd:/data rustfs/rustfs:latest server /data --console-address ":9001"

如何彻底卸载 rustfs

  • 针对二进制安装的 rustfs 服务,以下是卸载步骤:
systemctl status rustfs | grep "Loaded:"
systemctl stop rustfs
systemctl disable rustfs

rm -f /usr/bin/rustfs
rm -f /etc/default/rustfs
rm -f /usr/lib/systemd/system/rustfs.service
rm -rf /data/rustfs_9000
rm -rf /var/logs/rustfs
Copyright © www.sqlfans.cn 2021 - 2026 All Right Reserved更新时间: 2025-12-06 21:25:34

results matching ""

    No results matching ""