mdadm 可扩展至 6 个以上带有 SSD 的磁盘

mdadm 可扩展至 6 个以上带有 SSD 的磁盘

随着阵列中添加更多磁盘,Linux mdadm 似乎会产生更少的写入和 iops。例如,我测试了以下配置,除了将 I/O 调度程序更改为 deadline 并将 tuned-adm 配置文件更改为 throughput-performance 之外,其余配置均使用默认设置:

主板有双 E5 处理器、DDR4 RAM 和 10 个 SATA3 端口。SSD 是 10 个三星 850 Pro 硬盘。操作系统是 CentOS 7 64。(CentOS 6.7 真的很糟糕)。FS 是 xfs。

使用大约 4-6 个驱动器时,绕过缓存的顺序写入速度大约为 800 MB/s 到 1 GB/s。使用缓存的写入速度大约为 2-3GB/s。

运行各种 fio 测试,使用直接标志时 iops 似乎最高达到约 80,000 iops,而不使用直接标志时最高达到 800,000+ iops。

块大小为 512k,默认值。分区似乎已正确对齐。

当向阵列添加更多磁盘时,iops 总体上保持不变,大约为 60-80,000 iops,并且不会随着驱动器的增加而线性增加。

此外,当添加更多驱动器时,顺序写入似乎会急剧下降,就好像它只是一个驱动器一样。对单个驱动器的 iops 和顺序写入进行测试,结果约为 70,000 iops(基于 RW 百分比)和 400-500 MB/s。阵列中所有 10 个驱动器的顺序写入略低,介于 300-500 MB/s 之间。

然而,顺序写入并不是一个大问题,我想知道 mdadm 中是否存在被忽视的瓶颈或限制。使用 4-6 个驱动器时,它的性能非常棒。超过 6 个驱动器时,性能似乎保持不变或下降,尤其是在任何顺序写入时。

编辑经过一些额外的测试后,我能够在进行非常大的写入时提高连续速度,例如 20GB、40GB 80GB 等。使用 42GB 进行 dd 测试时,使用 fdatasync 产生了 640 MB/s 的速度。

我也知道 dd 并不适用于对 SSD 进行基准测试 - 这不是我的问题,我想知道当超过 4-6 个磁盘时,下降的原因是什么。

相关内容