SAS 扩展器与直接连接 (SAS)?

SAS 扩展器与直接连接 (SAS)?

我有一个带有 2 个背板的存储单元。一个背板可容纳 24 个磁盘,一个背板可容纳 12 个磁盘。每个背板都独立连接到 RAID 卡的 SFF-8087 端口(4 通道/12Gbit)。

这就是我真正要问的问题。背板会不会超载?或者说超载有多容易?机器中的所有磁盘都是 WD RE4 WD1003FBYX(黑色)驱动器,平均写入速度为 115MB/秒,平均读取速度为 125 MB/秒

我知道情况会根据我们在其上放置的 raid 或文件系统而有所不同,但似乎只有一个 SFF-8087 连接器的 24 个磁盘背板应该能够使总线过载到实际上可能减慢其速度的程度?

根据我的计算,如果我在所有 24 个磁盘上都有 RAID0 并请求一个大文件,那么理论上我应该获得 24*115 MB/秒,这相当于总吞吐量为 22.08 GBit/秒。

要么是我搞糊涂了,要么这个背板设计得很糟糕——至少对于基于性能的环境来说是这样。

我正在考虑切换到一种模型,其中每个驱动器都有自己来自背板(和新的 HBA 或 RAID 卡)的通道。

编辑:更多细节

我们使用了纯 Linux(centos)、开放式 Solaris、软件 raid、硬件 raid、EXT3/4、ZFS。

以下是一些使用 bonnie++ 的示例

4 磁盘 RAID-0,ZFS

WRITE     CPU    RE-WRITE  CPU    READ      CPU    RND-SEEKS
194MB/s   19%    92MB/s    11%    200MB/s   8%     310/sec  
194MB/s   19%    93MB/s    11%    201MB/s   8%     312/sec  
--------- ----   --------- ----   --------- ----   ---------
389MB/s   19%    186MB/s   11%    402MB/s   8%     311/sec

8 磁盘 RAID-0,ZFS

WRITE     CPU    RE-WRITE  CPU    READ      CPU    RND-SEEKS
324MB/s   32%    164MB/s   19%    346MB/s   13%    466/sec  
324MB/s   32%    164MB/s   19%    348MB/s   14%    465/sec  
--------- ----   --------- ----   --------- ----   ---------
648MB/s   32%    328MB/s   19%    694MB/s   13%    465/sec

12 磁盘 RAID-0,ZFS

WRITE     CPU    RE-WRITE  CPU    READ      CPU    RND-SEEKS
377MB/s   38%    191MB/s   22%    429MB/s   17%    537/sec  
376MB/s   38%    191MB/s   22%    427MB/s   17%    546/sec  
--------- ----   --------- ----   --------- ----   ---------
753MB/s   38%    382MB/s   22%    857MB/s   17%    541/sec

现在 16 盘 RAID-0 变得有趣了

WRITE     CPU    RE-WRITE  CPU    READ      CPU    RND-SEEKS
359MB/s   34%    186MB/s   22%    407MB/s   18%    1397/sec 
358MB/s   33%    186MB/s   22%    407MB/s   18%    1340/sec 
--------- ----   --------- ----   --------- ----   ---------
717MB/s   33%    373MB/s   22%    814MB/s   18%    1368/sec

20 磁盘 RAID-0,ZFS

WRITE     CPU    RE-WRITE  CPU    READ      CPU    RND-SEEKS
371MB/s   37%    188MB/s   22%    450MB/s   19%    775/sec  
370MB/s   37%    188MB/s   22%    447MB/s   19%    797/sec  
--------- ----   --------- ----   --------- ----   ---------
741MB/s   37%    376MB/s   22%    898MB/s   19%    786/sec

24 磁盘 RAID-0,ZFS

WRITE     CPU    RE-WRITE  CPU    READ      CPU    RND-SEEKS
347MB/s   34%    193MB/s   22%    447MB/s   19%    907/sec  
347MB/s   34%    192MB/s   23%    446MB/s   19%    933/sec  
--------- ----   --------- ----   --------- ----   ---------
694MB/s   34%    386MB/s   22%    894MB/s   19%    920/sec

(有人开始看到这里的模式了吗?):-)

28 磁盘 RAID-0、ZFS

WRITE     CPU    RE-WRITE  CPU    READ      CPU    RND-SEEKS
358MB/s   35%    179MB/s   22%    417MB/s   18%    1105/sec 
358MB/s   36%    179MB/s   22%    414MB/s   18%    1147/sec 
--------- ----   --------- ----   --------- ----   ---------
717MB/s   35%    359MB/s   22%    832MB/s   18%    1126/sec 

32 磁盘 RAID-0,ZFS

WRITE     CPU    RE-WRITE  CPU    READ      CPU    RND-SEEKS
354MB/s   35%    190MB/s   22%    420MB/s   18%    1519/sec 
354MB/s   35%    190MB/s   22%    418MB/s   18%    1572/sec 
--------- ----   --------- ----   --------- ----   ---------
708MB/s   35%    380MB/s   22%    838MB/s   18%    1545/sec 

更多细节:

确切的单位如下:

http://www.supermicro.com/products/chassis/4U/847/SC847E16-R1400U.cfm

答案1

如果不知道您所使用的具体硬件,通过两个 SAS SFF-8087 可以获得的最大速度是 24Gbps 或 3 GBps;但许多控制器扩展器组合实际上不会正确使用 SFF-8087 中的所有 4 个通道,最终您只会得到大约一条链路(0.75GBps)。

考虑到您的绩效数据,我猜测情况是后者。

答案2

我本来想购买同样的产品,但是现在考虑到其性能,我最好再三考虑。

另一方面,您使用的是哪种 RAID 控制器?因为我在其他地方读到过,这些 LSI 背板与非 LSI RAID 卡配合得不是很好。

关于理论性能:对于 24 个驱动器背板,您应该有 (SAS2) 6 gbit x 4 = 24 Gbit,即每磁盘 1 Gbit。使用相同的计算方法,您应该使用另一个背板获得每磁盘 2 Gbit。现在,每磁盘 1Gbit 代表... 80 MB/s?因此,2Gbit 足以使磁盘成为瓶颈。所以:

(80 MB/秒 * 24)+(125 MB/秒 * 12)= 3420 MB/秒

我知道这只是理论上的,没有人会在现实世界中期望这些数字……但你得到的是~10%。你最好用 Supermicro 或 LSI 检查这个问题,因为这很奇怪。

答案3

您引用的平均磁盘速度可能适用于最佳条件下的高度连续操作。如果您的工作负载是随机的,那么说起来会更糟糕(我是认真的)。

SFF-8087 电缆只有 4 个通道,您基本上可以通过以最大速度读取/写入 4 个磁盘来超载它们。关键是,您通常不会一直这样做,这就是 SuperMicro 在其机箱的 E1/E2 版本中使用 LSI 扩展器的原因。

如果您始终需要最大性能,则需要将每个磁盘连接到控制器上的单个 SAS 端口。大多数控制器有 4、8 或 16 个端口,因此您必须进行计算并添加更多控制器以支持 36 个磁盘。TQ 版本的 SuperMicro 机箱允许您以这种方式访问​​磁盘。

原始 IOPS 性能取决于您关注的设备。LSI HBA 通常具有 >250k IOPS 规格,而 SATA 磁盘将达到 100-120,SAS 稍高一些,而平均 Intel SSD 为 3000 IOPS(高度依赖于您的块大小)。

您必须了解您将要投入到这台机器上的工作负载,否则您将过度配置错误的资源。如果您的工作负载高度随机,并且您需要从磁盘/SSD 获得更多 IOPS,那么专注于原始顺序速度(每个磁盘都有自己的控制器通道)将无济于事。

相关内容