@@ -5,7 +5,6 @@ description: "使用 Linux 操作系统安装 RustFS 的快速指导"
55
66# Linux 安装 RustFS
77
8-
98## 一、安装前必读
109
1110本页面包含了 RustFS 的三种安装模式的全部文档和说明。其中,多机多盘的模式包含了企业级可用的性能、安全性和扩展性。并且,提供了生产工作负载需要的架构图。请装前请阅读,我们的启动模式与检查清单,如下:
@@ -35,7 +34,6 @@ description: "使用 Linux 操作系统安装 RustFS 的快速指导"
35347 . 磁盘规划;
3635
3736
38-
3937### 2.1. 操作系统版本
4038
4139我们推荐 Linux 内核为 4.x 及以上的版本。因为,5.x / 6.x 的版本可以获得更好的 IO 吞吐和网络性能。
@@ -63,11 +61,8 @@ systemctl disable firewalld
6361firewall-cmd --zone=public --add-port=9000/tcp --permanent
6462firewall-cmd --reload
6563```
66- 部署中的所有 RustFS 服务器 ** 必须** 使用相同的监听端口。如果您使用的是 9000 端口,其他服务器的所有端口均需要为 9000 端口。
67-
68-
69-
7064
65+ 部署中的所有 RustFS 服务器 ** 必须** 使用相同的监听端口。如果您使用的是 9000 端口,其他服务器的所有端口均需要为 9000 端口。
7166
7267### 2.3 主机名(单机单盘和单机多盘可跳过此步骤)
7368
@@ -77,15 +72,14 @@ firewall-cmd --reload
7772
7873** 1. DNS 配置:**
7974
80- 请配置你的DNS解析服务器,保障名字的连续性。
75+ 请配置你的DNS解析服务器,保障名字的连续性。
8176
8277** 2. HOSTS 配置:**
8378
8479修改 /etc/hosts中的本地别名设置,具体操作如下:
8580
8681
8782``` bash
88-
8983vim /etc/hosts
9084127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
9185::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
@@ -99,7 +93,6 @@ vim /etc/hosts
9993
10094RustFS 需要至少 2 GB 的内存来运行测试环境,生产的环境最低需要 128 GB 的内存。
10195
102-
10396### 2.5 时间同步
10497
10598多节点的一致性必须要使用时间服务器维护时间的一致性,不然可能会出现无法启动服务的情况。相关时间服务器例如使用 ` ntp ` , ` timedatectl ` , 或者 ` timesyncd ` 。
@@ -131,23 +124,20 @@ EC(纠删码)规划如下:
131124| 开发测试环境 | EC:2| 提供基本的冗余保护,适用于非关键业务。|
132125
133126
134-
135-
136127### 2.7 磁盘规划
137128
138129由于NFS在高IO情况下,会产生幻写和锁的问题,在使用RustFS时 ** 禁止使用NFS** 作为RustFS的底层存储介质。 官方强烈建议使用** JBOD(Just a Bunch of Disks)** 模式,即简单磁盘捆绑。这意味着将物理磁盘直接、独立地暴露给操作系统,由RustFS软件层面负责数据冗余和保护。
139130
140131
141132原因如下:
133+
142134- ** 性能更优:** RustFS 的纠删码(Erasure Coding)引擎经过高度优化,能够直接并发读写多块磁盘,实现比硬件RAID控制器更高的吞吐量。硬件RAID会成为性能瓶颈。
143135- ** 成本更低:** 无需昂贵的RAID卡,降低了硬件采购成本。
144136- ** 管理更简单:** 由RustFS统一管理磁盘,简化了存储层的运维。
145137- ** 故障恢复更快:** RustFS(healing)过程比传统的RAID重建(rebuild)速度更快,且对集群性能影响更小。
146138
147-
148139官方推荐在磁盘上使用NVMe SSD作为您的存储介质,保障更高的性能和吞吐能力。
149140
150-
151141### 2.8 文件系统选择
152142
153143RustFS官方在磁盘文件系统格式上,RustFS官方强烈推荐在所有用于存储的磁盘上使用 XFS 文件系统。RustFS的开发和测试都基于XFS,能够确保最佳的性能和稳定性。不建议使用ext4、BTRFS或ZFS等其他文件系统,因为它们可能会导致性能下降或出现不可预知的问题。
@@ -164,7 +154,7 @@ RustFS 在写入新对象或对象的版本时,为了保证写入性能和减
164154
165155首先,需要查看磁盘系统的情况:
166156
167- ~~~
157+ ```
168158sudo lsblk
169159
170160NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
@@ -174,22 +164,22 @@ sda 8:0 0 465.7G 0 disk
174164nvme0n1 8:16 0 3.7T 0 disk <-- if this is our format new disk
175165nvme1n1 8:32 0 3.7T 0 disk <-- if this is our format new disk
176166nvme2n1 8:48 0 3.7T 0 disk
177- ~~~
178-
167+ ```
179168
180169具体格式化命令如下:
181170
182- ~~~
171+ ```
183172sudo mkfs.xfs -i size=512 -n ftype=1 -L RUSTFS0 /dev/sdb
184- ~~~
173+ ```
185174
186175我们可以在格式化时加入一些推荐选项来优化性能:
187- - -L label: 为文件系统设置一个标签(label),方便后续识别和挂载。
176+ - -L \< label\> : 为文件系统设置一个标签(label),方便后续识别和挂载。
188177- -i size=512: RustFS官方推荐将inode大小设置为512字节,这对于存储大量小对象(元数据)的场景有性能优势。
189178- -n ftype=1: 开启ftype功能。这允许文件系统在目录结构中记录文件类型,可以提高类似readdir和unlink操作的性能,对RustFS非常有利。
190179
191180挂载:
192- ~~~
181+
182+ ```
193183# write new line
194184vim /etc/fstab
195185LABEL=RUSTFS0 /data/rustfs0 xfs defaults,noatime,nodiratime 0 0
@@ -198,9 +188,7 @@ LABEL=RUSTFS0 /data/rustfs0 xfs defaults,noatime,nodiratime 0 0
198188
199189# mount disk
200190sudo mount -a
201- ~~~
202-
203-
191+ ```
204192
205193## 三、配置用户名
206194
@@ -212,19 +200,16 @@ RustFS 启动,我们建议您配置一个专门的无登录权限的用户进
212200
213201以下示例是修改创建用户、组并设置权限以访问 RustFS 指定的数据目录(可选):
214202
215- ~~~
203+ ```
216204groupadd -r rustfs-user
217205useradd -M -r -g rustfs-user rustfs-user
218206chown rustfs-user:rustfs-user /data/rustfs*
219- ~~~
207+ ```
220208
221209注意:
222210- 如果创建了rustfs-user用户和组需要将 ` /etc/systemd/system/rustfs.service ` 中的User 和Group改为 ` rustfs-user ` ;
223211- 将 ` /data/rustfs* ` 调整为指定的挂载目录。
224212
225-
226-
227-
228213## 四、下载安装包
229214
230215请先安装 wge 或者 curl 下载 rustfs 安装包。
@@ -237,12 +222,8 @@ chmod +x rustfs
237222mv rustfs /usr/local/bin/
238223```
239224
240-
241-
242225### 五、配置环境变量
243226
244-
245-
2462271 . 创建配置文件
247228
248229
@@ -298,6 +279,7 @@ sudo chmod -R 750 /data/rustfs* /var/logs/rustfs
298279
299280### 七、配置系统服务
3002811 . 创建 systemd 服务文件
282+
301283``` bash
302284sudo tee /etc/systemd/system/rustfs.service << EOF
303285[Unit]
0 commit comments