我的家庭备份 FreeNas 盒使用 raidz2 配置,出现了一些性能问题,我想知道是什么原因造成的(处理能力不足、生态驱动器?)。
正在运行:
- Freenas 8.3.1
- 华硕 E35M1-I (哈德森 M1)
- 8GB 内存 (DDR3 1066)
- 6 x 2TB 硬盘(混合 WD Cavier 绿色 5900s、Seagate 绿色 5900s)
- raidz2
编写测试:
dd if=/dev/zero of=/mnt/beast/test/ddfile bs=2048k count=10000
20971520000 bytes transferred in 146.161146 secs (143482181 bytes/sec)
20971520000 bytes transferred in 166.954361 secs (125612292 bytes/sec)
阅读测试:
dd of=/dev/null if=/mnt/beast/test/ddfile bs=2048k count=10000
20971520000 bytes transferred in 85.232895 secs (246049603 bytes/sec)
20971520000 bytes transferred in 73.342644 secs (285938968 bytes/sec)
它似乎比我见过的其他 Raidz2 基准测试慢 2 到 3 倍。有什么想法可以解释为什么或如何提高性能吗?
答案1
除非您在文件系统上设置了 SHA256 校验和(或 gzip 压缩),否则 CPU 不应该成为瓶颈。
首先运行“top -SH”和“gstat”。第一个命令会显示 CPU 花费时间的位置,而 gstat 会显示磁盘正在执行的操作。这应该可以让您缩小性能瓶颈的范围——CPU 或磁盘。
使用 RAIDZ 时,性能会受到最慢驱动器的限制。只需一个有少量坏扇区的不稳定驱动器,速度就会变得非常慢,因此请检查 gstat 输出,查看哪些驱动器的响应时间异常长。
总的来说,我建议升级到基于 FreeBSD-9 的 FreeNAS 9,因为有很多 ZFS 改进没有出现在 FreeBSD-8 中(因此也没有出现在 FreeNAS 中)
答案2
为了比较:
- FreeNAS 9.2.0
- 英业达服务器主板
- 双 Xeon e5320
- 16GB 内存
- 6x2TB(Seagate 2TB 绿色 5900rpm 和 Seagate 2TB NAS 5900RPM ST2000VN000 混合)
- 突袭Z2
dd if=/dev/zero of=/mnt/zpool/Backups/testfile bs=2048k count=10000
10000+0 records in
10000+0 records out
20971520000 bytes transferred in 31.926824 secs (656862077 bytes/sec)
dd of=/dev/zero if=/mnt/zpool/Backups/testfile bs=2048k count=10000
10000+0 records in
10000+0 records out
20971520000 bytes transferred in 7.376463 secs (2843031884 bytes/sec)
答案3
也许您可能想购买 1 个 SSD 用作 ZIL。
- 戴尔 PowerEdge R510
- 32GB ECC 内存
- 7 个 1TB Segate SAS 硬盘
- Perc H200(LSI)
- 英特尔(R) 至强(R) CPU E5620 @ 2.40GHz
英特尔台式机级固态硬盘 (吉尔)
[root@nas ~]# dd if=/dev/zero of=/mnt/Storage/test bs=2048k count=10000 10000+0 records in 10000+0 records out 20971520000 bytes transferred in 6.721851 secs (3119902598 bytes/sec) 3.119902598 GB/s