ibmliuchun
作者ibmliuchun·2016-09-05 16:42
技术总监·IBM

坚若磐石-IBM FlashSystem A9K

字数 4740阅读 1492评论 0赞 0

不可否认,闪存技术虽然人气很旺,但至今闪存的应用依然小众, 主流的数据中心依然运行在传统盘阵之上,闪存的性能优势已是人尽皆知,不成问题,那又是什么成为当在CIO面前的障碍?诚然价格是一个方面,怎么对比价格、看待成本我们会在闪存存储效率一文中单独开篇讨论。事实上从技术角度而言困扰绝大多数客户的是闪存系统的RAS。尤其是很多企业级客户依然对Flash这个东东心存疑虑,毕竟磁介质已经用了三十年,Flash到底靠不靠谱依然在很多人的大脑里有个大大的问号。接下来我们不妨静下心来仔细看一看A9000全闪存的企业级特性如何超越传统存储,值得托付。

言归正传, 前文书提到A9000的核心设计思路是结合软件定义及硬件优化二种技术强强联合定制更适合现代数据中心的全闪存主存储解决方案。作为系统的基石,底层闪存平台至关重要。F900作为业界知名的全闪存平台无疑已经达到硬件优化技术的顶尖水平。其核心的FlashCore技术经过7XX系列、8XX系列、至今900系列三代产品的验证,其可靠性、稳定性、安全性已广为市场接受。从拿来主义的角度考虑,以F900作为底层可靠、稳定的存储平台比起 SSD的设计模式无疑是更为企业化的架构设计选择。而软件定义毫无疑问是X86控制器的强项,并且天生具备横向扩展能力,二者之间通过高带宽低延迟的网络连接基本可以对接出完美的系统整体架构。


从容错角度看, A9000系统的架构特性如下:

  • Grid Controller横向扩展,所有控制器完全对等,没有谁主谁从之分。所有的控制器并行处理IO,在服务器端配备了MPIO的情形下,任何一个逻辑卷的IO可以由所有的Grid Controller并发响应。任何单个控制器甚至是多个控制器的故障对系统存储服务不构成任何影响

  • 内部的双IB交换机提供系统内部数据通信网络。所有Grid Controller 和Flash Enclosure均和IB网络容错连接。没有任何单点故障

  • Flash Enclosure是系统底层的基石。内部全冗余架构,全硬件双控CrossBar内部全交换连接,模块内VSR 可变条带RAID, 模块间2D RAID, 基于FlashCore的核心技术提供高性能,高可靠值得信赖的存储平台

除了上述全容错,全交换这些基本的企业级特性之外,应该说A9000更突出的架构特色在于Grid Controller和Flash Enclosure解耦(Decouple controller with Flash)的设计模式,这也是其企业级定位的核心支柱之一。传统的基于X86+SSD的纯软件架构设计模式中系统所有的功能集中于Controller之中,一方面X86控制器自身容易出故障,另一方面随着系统软件功能的越来越多代码复杂性日益增高,可能一个软件功能的bug就会拖累整个控制器挂掉,导致相关的存储服务受损。一体化架构下服务器的任何硬件或软件故障会导致整个控制器宕掉。而A9000采用分离的系统架构设计则保证了Grid Controller的故障不会影响到后台的任何Flash Enclosure,而且由于系统是前后端全连接架构,后端的闪存单元仍然可以为前端其它健康的Grid Controller继续访问。

A9000的优势在于实现了更好的容错隔离,VSR/2D RAID数据保护,ECC校验处理,磨损均衡等底层的数据保护工作交由专门的硬件(FPGA)完成。通过硬件完成的优势一方面在于提升性能,同时也降低对复杂软件代码的依赖从而提供了更高的可靠性和可用性。而软件功能完全在Grid Controller中通过CPU+软件代码的方式实现。如前所述,底层架构越稳定,越坚固越好(硬件依赖型),而上层功能越丰富、越灵活、越弹性越能满足客户的需求(软件依赖型)。但是我们不希望系统的整体稳定性可靠性受到复杂软件功能的可能负面影响。

A9000的设计模式完美实现了二者的组合,硬软结合的分寸把握的非常到位,绝佳的实现了鱼与熊掌兼得。

咋一看A9000系统架构设计中规中距,但是技术范们很快就会提出疑问。内部交换网络的容错基本大家都认同,而且IB技术已经广泛在高端存储内部互连中使用,这个没什么好说的。后端的基石采用了全硬件优化专有架构设计,研究过FlashCore之后基本对这块也不会有太多疑问。但是对于前端的Grid Controller大拿们一般都会有所顾虑,从硬件角度来说无非就是X86服务器,故障率和风险同经过专门硬件优化的传统存储架构能比吗?常规的无单点容错够用吗?就算是软件定义的分布式存储也广为采用三份拷贝啊? 

这个问题一下戳到点子上了。说A9000结合软件定义绝不只是表面上拿来X86做控制器这么简单,而是拿来了它的灵魂-三份数据拷贝。只不过这里是Cache数据的三份拷贝,因为Grid Controller里只有Cache, 并不驻留用户数据。Cache数据的三机头保护提供了极高的系统可靠性和可用性。传统高端存储中的Cache镜像和Active-Active双活架构已经数十年没有什么发展了,A9000的Active-Active-Active无疑如闪电划过长空开创了全新的时代。

从架构分析上就可以看出其独特之处,Cache的三份数据镜像是动态的,而且Grid Controller之间由于有高带宽低延迟的IB连接,基本上有控制器故障时三重Cache镜像的重建在秒级既可以迅速完成。这其实相当于控制器自修复。即控制器故障时,无须人工干预系统自修复回到三重镜像的冗余健康状态,以保障系统可承受进一步的故障冲击。受损控制器的维护更换可以推后完成。从极端角度讲一个满配十二个控制器的系统可以不停的坏掉十个控制器(期间无须备件维护更换)还能依然保持正常运行。即使是极其极端的双重故障同时发生(A9KR),系统依然正常运行,这比起现在高端存储中双重故障数据丢失(因为Cache只有镜像保护), 单点故障写直通(Cache Disable)性能降级无疑是巨大的进步。而这一切都是基于软件定义的架构实现,完全不需要传统高端存储高昂的专有硬件架构。


我们一般形容某样东西完全靠谱值得信赖往往会提到“Rock Solid”- 像磐石一样坚固。

Flash Enclosure在A9000 中的地位就是这样,它是系统架构的基石,像磐石一样坚固可信。FlashCore是IBM闪存技术的核心,这也是当年花大价钱购买TMS的原因,有了值得信赖的核心技术,繁华似锦的各种解决方案才能信手拈来。这是为什么我们看到V9000,、A9000层出不穷。底子打好了,后劲不可估量。


FlashCore的本意就在于以Flash为核心。

所有架构设计围绕Flash的特质展开。简而言之,Flash的优势在于没有任何机械组件,同时随机读性能极佳,缺点在于写性能(尤其随机写)不好,而且每个Flash Cell有固有的寿命(P/E Cycle)周期。FlashCore技术的核心思路是围绕Flash的特质扬长避短,采用全硬件设计模式,无论是系统级内部控制器还是Flash Module上的内部控制芯片均采用FPGA方式(而非通用CPU 处理器),这样一方面通过全硬件数据路径(Hardware Accelerated IO)消除数据路径上的软件代码,避免了系统性能由于CPU+代码带来的性能降速,同时全硬件通道设计也使得数据保护的工作通过硬件实现,降低了架构复杂性,更稳定更可靠。

微妙延迟模块的设计也是FlashCore的核心特色之一。

这也是和基于通用SSD解决方案区别最大的地方。但凡像个样子的全闪存都会自己研发Flash Module。基于X86+SSD或传统控制器+SSD的方式产品推出很快,但从技术深度上毕竟中间搁着SSD厂商,始终有点二流水准的意思。但凡有点追求的技术控都愿意直接拿来Flash颗粒自行研发Flash Module,目的在于把Flash的性状吃透,扎干每一粒Flash颗粒的潜质。换个说法可能更好理解,就仿佛把Flash Module 看作SSD盘,有追求的人都是自己从上家Micro/Samsung等购买半导体闪存chip 然后再定制自己的SSD盘,而不是直接去买市场上WD/Segate的SSD磁盘。当然Flash Module完全不同于SSD 还在于里面还有大量的智能处理逻辑和更高层系统架构配合。从最近的市场动态可以看到越来越多的厂商在走上这条更专业化的道路。

A9000的Flash Module上有FPGA控制器,在Module内通过硬件实现了可变条带RAID(Variable Stripe RAID),极大的提升的Flash介质的利用效率,大大降低了Module的更换率(无论是SSD Rebuild, 还是Module Rebuild都是系统中开销比较大的操作,应该尽量避免)。A9000中光VSR对应的专利就多达15项之多。面对常见的Flash Cell介质故障,VSR硬件保护技术提供了最高效的数据保护,同时无损性能、无损容量、无额外的长时间RAID重建负担。

除了VSR实现模块内闪存芯片间的RAID5保护之外,系统还有第二层的模块间的RAID保护,实现二维数据保护(2D RAID),所有两层RAID保护均通过硬件实现,提供业界独一无二的最“硬”保护(Rock Solid)能力。


A9000在更高级闪存管理方面也颇有独到之处。如前所述闪存颗粒同磁介质最大的不同之处在于闪存颗粒是有寿命周期的。IBM和Micro(镁光)的深度合作使得在A9000中系统可以监控每一个Flash Cell的健康状况,通过监控Flash Cell的状态可以将更健康的颗粒更频繁的使用,而对不健康的颗粒定位其更多的用于读写访问不频繁的冷数据。通过这种自适应、自均衡的磨损均衡可以将介质寿命提升将近十倍。同时系统在超额供给(Over Provisioning)方面也提供了最强支持, 一个5.7TB的Flash Module上实际配置的物理容量高达8.8TB。 有了VSR的技术保障即使Module上高达25%的闪存芯片损坏,Flash Module也无须更换。而对于绝大多数 SSD而言, 盘上一个闪存芯片的损坏可能就意味着整个盘故障。随之而来的重建和磁盘更换都是不小的开销。

毫无疑问,A9000在企业级数据保护方面通过全新的架构开创了诸多先河,为全闪存系统的可靠性、可用性定义了全新的标杆。在闪存系统中还鲜有厂商愿意提供五年维保的当下,A9000率先垂范可提供长达七年的维保(在整个维报期内Flash Module的更换完全是免费的),这充分彰显了IBM对FlashCore技术的足够信心。可以预见,在现代数据中心全闪化的浪潮中A9000坚如磐石的系统架构必将获得客户的广泛信任。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

X社区推广