IBM XIV SSD缓存揭秘,将支持纵向扩展?

  EMC于本月6日重点推出了VFCache服务器闪存缓存产品,相比之下IBM XIV Gen3按原计划加入的SSD缓存支持显得比较低调。在《EMC VFCache对决IBM XIV Gen3 SSD缓存》一文中,我们编译了来自IBM的对比资料。尽管笔者曾经分析过IBM第三代XIV网格磁盘存储系统的改进之处,但新加入的SSD缓存也算是比较大的变化,有一些值得与读者分享的地方。

  VFCache和XIV Gen3 SSD Caching都是将闪存用于读缓存来加速阵列,VFCache的容量为300GB,由美光提供的PCIe闪存卡与Fusion-io在硬件上属于同一种形式;而IBM XIV Gen3加入的应该是400GB SATA接口SSD驱动器,单个模块的性能(特别是IOPS)无法与EMC VFCache相比,但XIV的SSD缓存却是分布式的,在每个数据/接口模块上都有一个(最多15个节点一共6TB)。理论上说VFCache位于服务器PCIe插槽上具备更低的访问延迟,但却无法扩展或者被多个物理主机共享;XIV Gen3 SSD缓存可以随着系统的“Scale-out”而同步扩展,并且能够被连接到存储阵列的所有服务器共享

  除了以上两者,我们还想起了较早开始在阵列中配置固态DRAM/闪存缓存的NetApp,其通过Data alt="IBM XIV SSD缓存揭秘,将支持纵向扩展?" src="http://cimage.tianjimedia.com/uploadImages/2012/051/2B1K062Y3U3U_XIV_Gen3_1_500.jpg">

IBM XIV Gen3接口模块:基于一款针对存储优化的Intel服务器平台

  如上图,根据箭头和文字的示意,可以看到在这个2U机架式双路至强5500服务器平台中,安装了一颗Xeon E5620四核CPU;左侧由它控制的内存槽中插有3条8GB DDR3内存(一共24GB);电源和散热风扇都是冗余配置;7个PCI扩展槽位看上去都被占用了,从左边第二块卡开始分别是20GB/s InfiniBand HCA千兆iSCSI网卡和两块8Gb/s Fiber Channel(光纤通道)HBA,其中iSCSI和FC HBA是XIV的接口模块具备而数据模块没有的。那么剩下的3个插槽中都是什么设备呢?SSD缓存又在哪里?

  我们将前面一张图放大看:

  用红色箭头①指出的就是SSD插槽(请结合下文中的图片),不过似乎有从主板连过来的SATA线缆,因此这里应该是一块安装SSD的转接板卡,而不是我们之前猜测过像Fusion-io和NetApp PAM II那样的PCIe闪存卡。

  箭头②所在位置除了SATA线缆之外似乎还有供电连接,也就是应该没有从下面的PCIe插槽取电,此处是为了安装存放XIV操作系统软件的CF闪存卡

  注:CF卡使用的协议属于并行ATA,实现与SATA之间的转接相对比较简单。

  箭头③左边指向的应该是6Gb/s SAS HBA卡,由它接出来的两条线缆中的一条估计是通向了机箱前端的SAS硬盘背板,而另外一条引向了右边,并从主板另一侧连接到上图右上角的转接板。这个的用途又是什么呢?

  为什么说XIV使用的是SAS HBA卡而不是RAID卡呢?这个要从它的架构原理谈起。IBM XIV底层使用的数据保护技术不是传统的RAID,而是以宽条带化的形式,通过伪随机算法将全部磁盘空间打散为1MB大小的数据块。每一个数据块都在另外一个节点的某一块硬盘上保持一份镜像,因此来自主机的访问能够被平均分布在每个模块和硬盘上,理论上不存在数据“热点”。同时在重建损坏的硬盘时,其数据几乎来源于其它模块中的每一个硬盘,2TB硬盘重建甚至只需要几十分钟,大大短于传统RAID,并且Rebulid过程对性能的影响较小

IBM XIV SSD缓存揭秘,将支持纵向扩展?

带有FC和iSCSI接口的XIV Model 114(即第三代XIV)接口模块,数据模块上3个主机接口扩展卡的位置是空着的。

  在2U接口模块的背面,从右往左看:首先是20GB/s InfiniBand HCA上的2个端口,分别连接到2个互为高可用的IB交换机;接着是一块4端口1Gb/s iSCSI以太网卡、2块双端口8Gb/s光纤通道HBA;“SSD Slot”的位置,应该可以插入一个2.5英寸SSD驱动器;而“Memory Flash Card”在金属档板上就是一个CF存储卡的插槽。靠近中间的位置有用于管理的USB和RS-232串口,这里的2个主板集成千兆网口也可以用于iSCSI;在它们左上方红圈里的2个接口,就是我们刚提到的