我有一些 Seagate Nytro SSD(型号 xs800le70004)、SuperMicro SAS3 JBOD(2C带冗余型号)、LSI 9300 SAS3 卡和 SAS HD 电缆(SFF-8644)。
当 SSD 同时连接主链路和冗余链路时,性能会下降到仅通过主链路连接时的 72%。即使直接与主链路上的驱动器通信,如果连接了冗余链路,性能也会受到影响。这种性能下降基本上涉及所有类型的 IO、读取、写入、读写、4KiB-512KiB IO 大小、QD1-QD16 和不同线程数(fio 中的“作业”)。
例如,如果一台服务器通过单个主链路连接,而另一台服务器通过冗余链路连接,则单个主链路的服务器的性能会受到影响。
我的预期是,需要通过多路径访问驱动器才能实现驱动器的全部性能,但对于任何未通过两个链路完全饱和驱动器的使用情况,驱动器的性能不会下降。
所以,我的问题是,这是正常的吗?我是否应该认为这种性能损失是冗余的典型权衡?
答案1
不,这不正常。
如果您只是连接辅助接口(而不主动使用它),则不会对性能产生影响。当吞吐量受到单个链路的瓶颈限制时,将接口聚合到一个主机适配器也应该可以提高性能。
在两个主机适配器上运行并发 I/O 会降低每个 HA 的性能,但总体上也会提高 SSD 的性能。
在您的设置中,很难找到罪魁祸首。它可能是 SSD 固件、RAID 控制器固件或机箱扩展器。检查当前固件版本及其发行说明。然后,您需要降低复杂性并使用较少的组件或替代组件进行测试。我认为 JBOD 机箱(扩展器)也是最容易排除的,可能是兼容性问题。