我正在寻找有关如何识别 ZFS 存储服务器性能问题的建议。该服务器是我为 NAS 设备概念验证而构建的原型,它允许我将相机存储卡卸载到共享存储。我们讨论的是 512GB 传输,由客户端处理校验和验证。我有相当多的 Linux 经验,但选择 FreeBSD 进行构建,因为它原生支持 ZFS。
细节:
- FreeBSD 12.1
- 英特尔至强 E3 1225
- Intel S1200BTS 主板
- 16GB DDR3 内存
- Dell H310 刷新至 IT 模式(安装在 16x 插槽中)
- Aquantia aqc107 10gbe 网卡。
6 个 2TB HGST Ultrastar SAS 硬盘。(配置为一个 RAID 0 存储池)
网络协议 Samba
初步预期
我希望服务器能够以大约 900mbps 的速度通过 10gbe 进行读写。
测试和结果
我发现很难测量 10gbe 上的池速度,因为我通常使用的工具无法给我一个一致的结果。我使用 AJA 速度测试和 Blackmagic Disk Speed Test 进行了测试,得到了不同的结果。AJA:140mbs 写入/80mbs 读取 Blackmagic:450mbs 写入/80mbs 读取
实际使用中,使用 Hedge 卸载软件将相机存储卡卸载到服务器,10GB 的传输平均速度约为每秒 170mb。
这些结果很奇怪,而且远远低于我的预期。我用 Ramdisk 测试了传输速度,单向传输速度约为 1GB 每秒,这排除了实际连接。
问题
- 为什么基准测试软件报告的速度不同?
- 在这种情况下,识别瓶颈的最佳方法是什么?我最初的想法是可能是戴尔 H310
- 在这种情况下,配置和缓存会有帮助吗?或者这个问题纯粹与硬件有关。
我认为我已经包含了解决此问题所需的所有信息。如果有遗漏,请原谅。H
答案1
一般来说,没有足够的 RAM 或正确的磁盘设置来适应这些传输速度。
除此之外,还有调整的问题:
- 网络调优
- SMB 协议调整
- Linux 系统调优
- ZFS 文件系统调整
- 磁盘和 ZFS 池布局
- 缓存
- 硬件设计
不过,你的要求绝对是可能的。