我们正在寻找合理的速度存储。由于预算低,我们决定使用软件iSCSI或AoE目标。在更改生产基础结构之前,我们正在进行一些测试以选择最佳技术。
为了进行测试,我们使用:
- 目标富士通西门子RX200 S4
- 富士通西门子RX200 S4作为启动器
- NetGear管理的1GBit交换机
- 板载NIC(Broadcom w / TOE),EdiMax NIC,Broadcom NIC w / TOE-全部1GBit
- 目标服务器正在使用带有6个2TB WD蓝色SATA驱动器的QLogic控制器。
- 目标和启动程序操作系统均为具有所有更新的Ubuntu 16.04 LTS。交换机专用于存储。我们测试绑定和多路径。
我们的问题是读取速度低。为了进行测试,我们使用dd
了40-100GB的文件。
- 目标服务器上的本地读写速度超过300MB / s。
- 通过iSCSI或AoE写入服务器的速度超过200MB / s,这使我们满意。
- 从服务器读取的数据始终为95-99MB / s。
我们已经尝试过ietd,aoetools,LIO。我们使用了2个NIC的绑定:balance-rr和LACP,与rr进行多路径。使用普通和巨型帧。最终,我们甚至在目标和主机之间进行了直接以太网连接(无需切换)。
所有测试给出的结果更少(当然,使用不带TOE和iSCSI的普通NIC得出的结果要差20-30%)。
使用iperf进行的测试网络显示传输速度约为200MB / s(2GBit)。用bmon观察目标上的NIC使用情况,发现两个设备的利用率均相等(读取时每个设备大约50MB / s,写入时大约100MB / s)。
由于运气不好,我们决定使用第三个NIC(当然是双方)。结果很奇怪:
- 2个NIC-每个50MB / s
- 3个NIC-每个33MB / s
目标软件是否有任何限制,可禁用高于1GBit / s的输出?
我们做错了什么?