有趣生活

当前位置:首页>科技>高并发系统存储过程更多百万IOPS的HA存储软件

高并发系统存储过程更多百万IOPS的HA存储软件

发布时间:2026-07-25阅读(1)

导读本文内容非商业用途可无需授权转载,请务必注明作者、微博ID:唐僧_huangliang,以便更好地与读者互动。在《SPC-1IOPS被刷到500万,说不是因....

本文内容非商业用途可无需授权转载,请务必注明作者、微博ID:唐僧_huangliang,以便更好地与读者互动。

在《SPC-1 IOPS被刷到500万,说不是因为内存你信吗?》一文中,我曾经跟大家讨论过“滥用”DRAM写缓存对跑分的巨大意义。而回到实际中,绝大多数用户还是需要Cache数据落盘的存储方案。大家可能看到ScaleIO、VSAN等分布式存储宣传过几百甚至上千万的IOPS,不过一方面许多应用并没有那么高的需求,另一方面我们也没必要总是“为了分布式而分布式”。

这次我想以连载形式给大家介绍两款还算靠谱的存储软件,在2节点配置下即可测得上百万IOPS。与新兴的分布式ServerSAN相比它们显得较为传统,与存储阵列硬件相比其性价比应该有优势,总的来说也属于软件定义存储(SDS)产品吧。

同时我也提前说明下,这两款方案在今天的普及度应该都不算高,一部分原因是它们的适用性或者说设计局限(本文结尾处会解释)。也就是说,省钱却不是人人能够享用,客观看待其价值就好。

双4路服务器 全闪存JBOD的SOFS方案

前不久我写过一篇《微软WS2016原生分布式存储:还在追赶VSAN?》,而本文介绍的是WindowsServer 2012 R2中的Storage Spaces。以下性能数字也是两年前的测试配置(引用自《Achieving over 1-MillionIOPS from Hyper-V VMs in a Scale-Out File Server Cluster using Windows Server2012 R2》)

根据上面的架构图,最上方是运行测试负载的Hyper-V服务器,使用Mellanox 56G InfiniBandRDMA网卡连接到微软双节点Scale-Out文件服务器(SOFS)集群。作为存储节点的戴尔R820四路Xeon服务器,通过多块Avago/LSI12G SAS HBA连接到后端共享的JBOD机箱——里面有60个HGST(原STEC)ZeusIOPS SASSSD。

从服务器处理能力、存储介质(盘)和数据路径上,这一方案确实把前后端都打通了。

应该是为了性能,我们看到R830服务器上的9300-8e SAS HBA卡每块只使用了一个接口,把JBOD上的SAS口都插满了。DataOn这台JBOD的一个特点是每个连接模块的SAS x4接口达到了4个,不过两年前它还是6Gb SAS,这类高密度盘柜用于冷数据多一些,因此主机接口的升级往往也会滞后一些。

DellSOFS参考架构及软硬件高可用设计

作为微软的合作伙伴,戴尔也提供一系列Storage Spaces认证的解决方案。除了使用服务器之外,JBOD也是Dell的MD 1400/1420(12Gb SAS)、MD 3060e(6Gb SAS)等,盘位数分别为2U 12x 3.5”、2U 24x 2.5”和4U 60x 3.5”。

目前戴尔已经将SC/PS存储阵列使用的5U 84x 3.5”机箱引入到服务器JBOD产品线,型号为MD1280,后续可能会有12Gb SAS的升级版本。

微软SOFS的服务器/JBOD典型数量配比,包括2x2、2x3、2x4、3x3和4x4,上图中标出了它们对应支持的虚拟机数量,下面我们就来看看最高的4x4具体是怎么配置的。

这个CPS是戴尔和微软联合的Cloud Platform System混合云平台的缩写。当时用的存储服务器节点是4台PowerEdge R620(如今应该升级成R630了),通过2块双端口LSI SAS HBA分别连接到后端4台MD3060e JBOD。接下来就硬件连接和软件配置展开一点讨论。

首先是右边一行NOTE小字“每个JBOD机箱(SAS)Expander拥有3个SAS链路——2个链路用于连接到节点,另外一个提供在SAS Expander故障情况下的MPIO连接性。”

我们知道,Storage Spaces作为一个共享磁盘的存储软件,每个JBOD中所有磁盘都要对前端每台服务器可见。在上图中的4x4方案中,我举一个例子:如果JBOD(左1)的SAS Exp(左)故障,服务器(左1、左2)将失去直接到该JBOD的连接,此时可以通过这2台服务器到JBOD(左2)的连接,经由SAS Exp-SAS Exp的级联临时使用非最优的访问路径。

上面是硬件结构对单点故障的规避,再来看看软件。Enclosure aware(机箱感知)这一点后面我会讨论,上图中可以看到3副本镜像和双重校验(软RAID6)的支持,还有SSD/HDD自动分层存储、write-back缓存和SSD日志等特性。

解决方案中心虚拟机/私有云POC

以上讨论还是偏“高大上”的配置和纸面,而更加接近用户实际的POC测试结果,其参考价值应该更大。

前年在上海DSC进行的这个戴尔-微软联合测试信息见上图,下面我们来看看方案设计。

尽管我没看到详细配置,不过还是有一些信息,包括存储服务器和JBOD的配比是2x3,前端计算网络是2个万兆。至于成本,只要有了符合要求的Win2012R2版本,存储软件功能就是免费的,这点和Windows Server 2016中的Storage Spaces Direct一样。需要说明的是,Storage Replica(存储复制)和Stretch Cluster(延伸集群)这两个功能要到2016版本才有。

在SOFS集群上的2个虚拟机同时测得7万IOPS@8K,总共就是14万。我们看到CPU的占用率并不高。

在单个虚拟机内测试顺序读写性能也比较满意,其中读2160MB/s几乎达到了2个万兆网卡的极限,写1552MB/s也不逊于一般RAID卡了。

什么是“盘柜感知”?

上图中提到了添加第4、5个磁盘柜。我们前面介绍的都是在存储服务器和盘之间,具备冗余连接路径无单点故障的情况;如果增加到5个磁盘柜,每服务器到JBOD之间的连接路径只能保证1条。这时就要面临“整柜丢失”的问题,或者说为了保证可用性,在1-2个JBOD离线(至少对某些服务器不可见)的情况下集群仍要提供正常访问。

所谓“盘柜感知”,就是Storage Spaces能够识别到SSD/HDD驱动器来自哪个JBOD,然后保证一组副本或者RAID条带的成员盘分布在不同的JBOD机箱中。据了解,这里面有戴尔MD系列在Firmware层面的配合。按照常识,如果3-way镜像(三副本)需要至少3个JBOD,而RAID 5(最少2 1)也是如此,前者甚至能够容忍两个整柜丢失。

这个参考配置是2台PowerEdge R730 SOFS节点加上3个MD1400 Enclosure,全冗余的SAS连接。加入具备盘柜感知的话,其容错程度将进一步提高,其中某个JBOD里的背板坏了应该也不影响访问。

方案限制:SMB3文件协议、Windows环境

上面介绍了不少SOFS的特点,也应该说说其应用受限的原因。除了我提到过的存储复制等企业级特性要到Windows Server 2016才支持之外,微软的Storage Spaces基本上要依赖SMB3文件协议,这是它限于Windows、Hyper-V服务器环境。

也正是这个原因,SOFS应该无法参加SPC-1测试,换个角度说也不是所有支持SPC-1测试的系统都去跑这个。在下篇中,我想给大家介绍另外一款轻量级的2节点SAN块存储软件方案,性能比本文中的还要高哦:)

注:本文只代表作者个人观点,与任何组织机构无关,如有错误和不足之处欢迎在留言中批评指正。进一步交流技术,可以加我的QQ/490834312。如果您想在这个公众号上分享自己的技术干货,也欢迎联系我:)

尊重知识,转载时请保留全文。感谢您的阅读和支持!《企业存储技术》huangliang_storage

原文地址:http://mp.weixin.qq.com/s?__biz=MzAwODExNjI3NA==&mid=2649774384&idx=1&sn=6c94f3cc3b3fec3a4e6d387709612c57#rd

Copyright © 2024 有趣生活 All Rights Reserve吉ICP备19000289号-5 TXT地图HTML地图XML地图