【IT168评测中心】云存储(Cloud Storage)是在云计算(Cloud Computing)的概念上延伸和发展出来的一个新的概念。云计算则是并行处理(Parallel Computing)和网格计算(Grid Computing)的发展,总的来说都属于分布式计算(Distributed Computing),通过网络聚集大量的、分布的(地理上分布或者不分布都可以)各种资源来提供强大的计算处理能力。
云计算
云存储的概念与云计算类似,基本上它是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。
浪潮存储服务器新品发布会
在云计算炒的火热的现在,云存储也开始逐渐兴起,传统服务器厂商和存储厂商都随之推出了对应的产品。针对云存储概念的具体应用,如在线视频、搜索引擎数据存储、网络游戏和在线交易等数据库应用,它们需要大规模、大容量的分布式存储,为了满足这些应用对存储服务器高性能、低存储成本和低功耗和方面管理的要求,浪潮推出了特别打造的SA5212系列存储服务器,包括SA5212L和SA5212S。
我们收到了浪潮Inspur送来的一台存储服务器SA5212L,它具有12个3.5"热插拔SAS/SATA硬盘槽,可以提供最多24TB容量的存储能力,既可以当作传统的存储服务器来使用,也可以担任云存储/云计算中的一个存储结点——它主要为后者而设计。
Inspur SA5212L是一台2U高度的存储服务器:
Intel Xeon E5520,Nehalem-EP架构,45nm工艺,内含4个核心,搭配超线程技术实现了8个硬件线程,可以提供充足的数据吞吐能力;E5520频率2.26GHz,具有8MB的L3缓存,支持三通道DDR3-1066内存
服务器的网络子系统是一个重要的部分,对服务器的性能表现来说非常重要,浪潮SA5212L服务器使用了Intel最新的82576EB网络芯片,从封装上看就知道其性能不凡:
82576EB的虚拟化功能也值得一提,它的VMQ虚拟机队列可以支持8个虚拟机,虚拟机可以直接访问硬件,从而大为消除虚拟层的消耗。不过我们认为SA5212L作为一个存储服务器,在虚拟化方面的需求可能并不高。
ServerEngines公司主要开发与网络存储、光纤汇聚、虚拟化、服务器/客户端整合等应用相关的产品,SE-SM4210-P01是一款着眼点非常独特的产品,它不仅是一款基于IP的服务器管理控制器,还整合了图形芯片,可支持高分辨率KVM over IP,远程存储和IPMI 2.0规范,浪潮SA5212L在管理方面确实下了不少功夫
SA5212L是浪潮专门为互联网应用来设计,这实际上有些靠近云存储的概念,它有什么特点呢?它的配置和传统的存储服务器有些不同,通常的存储服务器使用一个硬件阵列卡来提供数据安全性,然而具有云存储性质的存储服务器不太一样,它倾向于将数据安全提升到软件层次,如:使用分布式文件系统,来提供一个更大范围内的数据安全,SA5212L被设计为同时支持这两种不同的存储服务器应用。
前一幅图的LSI SAS 3041E-R是一个4端口SAS 3Gb/s HBA卡,使用PCIe 1.0 x4接口,提供了4个SAS/SATA设备的连接能力,它使用的是LSISAS1064E芯片,基于ARM处理器引擎,用来处理SCSI指令
LSI SAS 3081E-R,和LSI SAS 3041E-R是兄弟,区别是它提供了8个SAS 3Gb/s接口以及使用了PCIe 1.0 x8接口;值得一提的是,LSI的SAS HBA驱动只有在Windows Server 2008、Windows 7、Windows Server 2008 R2这三个Windows以及一些较新的Linux上才能支持MSI/MSI-X中断方式(3041/3081只支持MSI),因此我们最后使用了Windows Server 2008 R2
533MHz PPC处理器 LSI SAS 9211-8i评测
使用的是Seagate Barracuda ES.2企业级SATA硬盘,和一般的桌面硬盘相比,它具有更高的可靠性,可以满足24x7的不间断运行需求
每个容量1TB,总容量就是12TB
在2005年度服务器横评之后,我们认为当时的网络实验室无法满足今后继续发展的服务器测试的需要。所以,2006年我们IT168评测中心又斥资几十万对于IT168网络实验室的服务器测试平台进行了大幅度的升级,为思科Catalyst4500千兆交换机(WS-X4013+ Supervisor Engine II-Plus和WS-X4548-GB-RJ45)增加了一个思科全千兆24口模块WS-X4424-GB-RJ45,可同时连接72个千兆铜缆设备和2个光缆设备。另外,我们还购置了29台Dell PowerEdge SC430塔式服务器和原来的32台主流配置PC一起为服务器测试平台的提供负载。2007年,我们又采购性能更强的部分客户端,来确保为新一代的服务器提供足够的测试负载。2009年初,我们又对所有客户端的内存子系统进行了全面的升级。
Catalyst4500千兆交换机
部分Dell PowerEdge SC430服务器
在新的测试环境下,我们进一步完善了服务器性能测试方案:
Iometer 2006.7.27
Iometer是一款功能非常强大的IO测试软件,它除了可以在本机运行测试本机的IO(磁盘)性能之外,还提供了模拟网络应用的能力。在这次的测试中,我们仅仅让它在本机运行测试服务器的磁盘性能。为了全面测试被测服务器的IO性能,我们分别选择了不同的测试脚本。
IOzone 3.300
IOzone是一个用来测试文件系统性能的软件,和Iometer使用数据块来测试存储子系统的“裸”性能不同,IOzone用来测试存储子系统在构建具体的文件系统之后的性能。不同的文件系统具有不同的组织方式,它们需要额外的CPU周期来进行处理,因此不同的文件系统具有不同的性能特征;即使是同一种文件系统,在不同的操作系统实现中,性能表现也不同。在分布式环境当中,分布式文件系统实现了以往由硬件阵列卡实现的数据安全,这些软件实现也需要占用处理器,因此我们使用了IOzone来测试在具体操作系统下的具体文件系统下的性能。
NetBench v7.03
NetBench是针对文件服务器的性能测试软件,影响NetBench性能的主要是服务器的磁盘子系统,服务器磁盘控制器、条带大小、读写缓存、硬盘类型、组建磁盘阵列模式、内存容量、网络拓朴结构等都会对测试结果有明显的影响。我们在被测服务器上设立了文件服务器,NetBench通过网络实验室中60个客户端来模拟网络中的PC向文件服务器所发出的文件传输请求,文件服务器则将存储在磁盘上的文件数据发送给相应的客户端。在测试过程中,客户端会以每四台一组的步进依次增加并且向服务器发送文件传输请求,测试结束后控制台收集数据并绘制出服务器的数据传输变化曲线。
测试对比平台的详细参数如下:
测试平台、测试环境 | |||||
测试分组 | |||||
类别 | Inspr SA5212L 双路Intel Gainestown,12 3.5"热插拔硬盘槽 Xeon E5520 | ||||
处理器子系统 | |||||
处理器 | 双路Intel Xeon E5520 | ||||
处理器架构 | Intel 45nm Nehalem | ||||
处理器代号 | Gainestown | ||||
处理器封装 | Socket 1366 LGA | ||||
处理器规格 | 四核 | ||||
处理器指令集 | MMX,SSE,SSE2,SSE3,SSSE3, SSE4.1,SSE4.2,EM64T,VT | ||||
主频 | 2.27GHz | ||||
处理器外部总线 | 2x QPI 2933MHz 5.86GT/s 单向11.72GB/s(每QPI) 双向23.44GB/s(每QPI) | ||||
L1 D-Cache | 4x 32KB 8路集合关联 | ||||
L1 I-Cache | 4x 32KB 4路集合关联 | ||||
L2 Cache | 4x 256KB 8路集合关联 | ||||
L3 Cache | 4MB @ 2128MHz 16路集合关联 | ||||
主板 | |||||
主板型号 | Inspur SA5212L | ||||
芯片组 | Intel Tylersburg-EP IOH:Intel 5520(Tylersburg-36D) ICH:Intel 82801JIR(ICH10R) NIC:Intel 82576EB(Kawela) | ||||
芯片特性 | 2x QPI 36 PCI Express 2.0 Lanes VT-d Gen 2 | ||||
内存控制器 | 每CPU集成三通道R-ECC DDR3 1066 | ||||
内存 | 4GB ECC DDR3 1066 SDRAM x4,双通道 | ||||
系统磁盘子系统 | |||||
磁盘控制器 | Intel 82801JIR(ICH10R) | ||||
磁盘控制器规格 | 6x SATA 3Gb/s RAID 0/1/3/5/6 NCQ | ||||
磁盘控制器设置 | SATA 3Gb/s | ||||
磁盘控制器驱动 | IMSM 8.9.0.1023 | ||||
磁盘 | FUJITSU MHZ2160BH G2 | ||||
磁盘规格 | 5400RPM 160GB SATA 3Gb/s 16MB Cache NCQ | ||||
磁盘设置 | SATA 3Gb/s NCQ 50GB系统分区 | ||||
存储磁盘子系统 | |||||
磁盘控制器 | LSI SAS 3041E-R LSI SAS 3081E-R | ||||
磁盘控制器规格 | 3041E-R: ~200MHz ARM SoC PCIE 1.0 x4 MSI 4x SAS 3Gb/s RAID 0/1/1E NCQ 3081E-R: ~200MHz ARM SoC PCIE 1.0 x8 MSI 8x SAS 3Gb/s RAID 0/1/1E NCQ | ||||
磁盘控制器设置 | MSI SATA 3Gb/s NCQ | ||||
磁盘控制器驱动 | 操作系统集成 | ||||
磁盘 | Seagate Barracuda ES.2 ST31000340NS x12 | ||||
磁盘规格 | 7200RPM 1TB SATA 3Gb/s 16MB Cache NCQ | ||||
磁盘设置 | SATA 3Gb/s NCQ DFS | ||||
网络子系统 | |||||
网卡 | Intel Kawela 82576EB 双口千兆网卡 x1 | ||||
网卡规格 | PCI Express 2.0 x4 @ 2.5GT/s @ Intel E5520 IOH MSI-X TOE、LSO、RSS、RSC、VMQ、SR-IOV IPsec Offload I/O AT / DCA 9k Jumbo Frame MACsec RSS:16 RX/16 TX Queues VMQ:8 VMs Intel NIC Teaming Load Balancing | ||||
网卡设置 | PCI Express 2.0 x4 @ 2.5GT/s @ Intel E5520 IOH MSI-X TOE、LSO、RSS、RSC I/O AT / DCA RSS:8 Queues Intel NIC Teaming Load Balancing | ||||
网卡驱动 | Intel PRO Set 14.7 | ||||
软件环境 | |||||
操作系统 | Microsoft Windows Server 2008 R2 Datacenter x64 |
存储子系统和网络子系统都属于I/O密集型系统,越新的操作系统对其发挥就越好。Windows Server 2008 R2配合最新的驱动程序可以提供对多核更好的支持,以及更好地发挥Kawela 82576EB/LSI SAS HBA的各种先进特性,如RSS、I/O AT、MSI-X等。关于MSI-X以及Windows 7/Windows Server 2008 R2内核改进,可以查看这里:
Intel Kawela/82576EB:I/O AT与RSS,图上显示RSS/接受方调整队列的数量为8个队列,然而Kawela的文档里面则写着16 TX/16RX队列,这是因为可开的RSS队列不能超过系统物理CPU核心数目(超线程效果不算)
Intel Kawela/82576EB:MSI-X,静态时总共使用了42个中断向量;MSI-X可以在动态调整中断向量的使用
在正常的IDLE情况下,2.26GHz的Xeon E5520运行在1.6GHz的频率
测试先使用了传统的Iometer,它主要用来测试存储子系统的“裸”性能,实际磁盘性能还与操作系统、文件系统等相关。Iometer的测试结果可以清晰地表现出存储子系统执行存储IO指令的快慢。
Inspur SA5212L的存储子系统使用了LSI SAS 3041E-R和LSI SAS 3081E-R,它们都是SAS 3Gb/s的HBA,大致上使用的是 在200MHz附近变化的一个ARM处理器。它们的下一代SAS 6Gb/s产品已经推出,规格大有提升:
533MHz PPC处理器 LSI SAS 9211-8i评测
大致上,在最高IOps测试当中,Inspur SA5212L可以达到14万的连续读写IOps,这基本上是由于HBA的限制,而在随机IO上,在512B为1800,64KB为1600,这大部分上是由于硬盘的限制。
有很多理由使用1MB的区块进行Iometer测试,首先:更大的区块可以提供更高的IO吞吐量,其次:Vista开始的Windows操作系统开始更多地使用1MB的区块进行磁盘IO,再三:LSI SAS的驱动程序最大支持1MB(32位Windows)/2MB(64位Windows),最后:1MB的区块可以很容易地计算吞吐量,IOps的数值直接就是吞吐量的数值。
在1MB区块测试里面,读写吞吐量都为1200MB/s左右,也就是1.2GB/s;随机吞吐量则是500MB/s。在包括之前的各个区块的测试当中,在超过32的队列深度下IOps都会直接下降,这是因为SATA协议的NCQ本地命令排序只支持32个队列深度的缘故。
在各种企业应用的脚本测试上,性能都维持在1500~1600 IOps,这应该就是12个SATA硬盘的极限了。每个SATA硬盘提供100多的IOps,而较好的15000 RPM SAS硬盘可以在256队列深度下提供300~500的IOps,不过,容量会更小,价格也会更贵。Inspur SA5212L也支持各种3.5" SAS硬盘,用户追求高性能的时候可以考虑。
IOzone测试和Iometer测试比较不同,它基于文件操作,测试对象为文件系统。不同的文件系统具有着不同的文件操作系统,即使是同一个文件系统,在不同的操作系统实现中性能也有不同,并且文件系统本身也有版本等差异。
IOzone测试结果表明,各种情况下的最高吞吐量都接近2GB/s,约为1.6~1.8GB/s左右,这表明文件系统本身处理的资源占用并不明显。当然,负荷越重,文件系统资源占用也会变大,总性能会有所下降。
如果说IOzone是测试文件系统的话,那么NetBench则是更进一步,它测试的是多个用户下的网络文件系统的性能。对于服务器来说,考量了网络和存储子系统的实力,同时操作系统对网络IO以及对存储IO的实现也会有所影响。我们使用了Windows Server 2008 R2 Datacenter的DFS文件系统。
NetBench 7.03 Ent_dm.tst测试脚本模拟的是企业级文件服务器服务器应用,它不但要求被测服务器服务器的磁盘子系统可以提供足够的吞吐量,还需要其具有较高的IO处理能力,并且需要较为平衡的读取能力和写入能力。
测试成绩是800MBps左右,可以看到,文件服务器的平均响应时间一直在上升,而吞吐量却很快达到了极限。实际上,瓶颈是来自磁盘,7200RPM的SATA磁盘就是这个性能。
【IT168评测中心】Inspur SA5212L以及SA5212S是前段时间浪潮推出的面向互联网应用的存储服务器,但是它也可以作为传统的存储服务器来应用。最新兴起的“面向互联网应用的存储服务器”有些类似于云存储的概念,基本上它是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。
两种存储服务器模式的是由存储控制器的分别而产生,传统的存储服务器通过硬件层次也就是阵列卡来提供数据安全,以及阵列性能提升;面向互联网应用的情况下,由于会部署大规模的服务器,这时候数据安全则可以通过软件层次来提供,也就是现在所谓的分布式文件系统(Distributed File System,DFS;具体例子有Windows DFS和Solaris ZFS)来提供,DFS同时提供了数据安全性以及性能提升,多个存储服务器的性能可以通过DFS来得到聚合、升级。
浪潮Inspur SA5212L存储服务器在存储子系统和网络子系统上都有所创新,网络子系统使用了Intel最新一代的Kawela双口千兆网络芯片,支持多达16个队列的RSS,以及多达8个虚拟机的VMQ,还支持如I/O AT之类的增强技术,性能和功能都很强大;存储子系统如前面所述,配合软件的分布式文件系统实现来满足如在线视频、搜索引擎数据存储、网络游戏和在线交易等数据库这方面的大规模、大容量的分布式存储应用需求,如搜索运营商和网络游戏、在线视频企业已经部署了大量的类似SA5212L这样的服务器。
Inspur SA5212L存储服务器,提供了强大的计算能力和网络能力以及12个外部3.5"热插拔SAS/SATA插槽
在传统网络存储服务器上,瓶颈其实存在于网卡。在沉重的负荷下,存储服务器的CPU将会大量耗费在处理网络中断和网络协议上(Windows下,包括在ISR和DPC当中)。而经过我们的测试发现,Inspur SA5212L已经一定程度上消除了网卡上的瓶颈,它的Kawela/82576EB网卡支持MSI-X、RSS、I/O AT以及包括TCP Chimney Offload在内的各种Task Offload技术(这些Offload包揽了大部分的网络协议处理工作),同时基于Nehalem-EP平台的架构也让系统具有足够强劲的处理器资源。
12个Seagate Barracuda ES.2企业级SATA硬盘,转速7200RPM,和一般的桌面硬盘相比具有更高的可靠性,24x7不间断运行
新的瓶颈产生于存储子系统,在我们的评测样机上,是在较低IOps的7200RPM SATA硬盘。这其实是一个取舍的问题,使用15000RPM的SAS硬盘可以提供更好的IOps表现乃至最后的NetBench文件服务器性能表现,但是容量会受到较大的限制,同时价格也会大为上升。我们认为,对于新的涉及到分布式文件系统应用来说,Inspur SA5212L提供了一个很不错的架构,用户可以根据自己的需求和给出的性能来评估自己需要搭配什么样的硬盘,从而获得自己想要的存储性能表现。