前言
, Y3 C( `! f6 f0 h2 e+ ?# p" q4 G. n7 j6 K4 , V: C# _ }根据IDC和Garnter的很多报告和统计数据,我们可以得知在当今的存储器市场中,销售量增长最快、技术发展最快、市场前景最好的存储器产品当属于中端模块化存储器市场,因此本章将继续从其他角度讲解基于集群技术模块化存储器的设计思路发展。(注:现阶段中端模块化存储器发展的另外一个方向是从集群模式发展到scale out架构,这个话题不在此节讨论主题中,笔者将在后面章节中提到。)
6 U q% {' G$ l1 J上一节我们花了不少时间从体系结构的角度讲解了基于集群技术的模块化存储器的发展思路,我们可以发现提高存储器的整体性能很大程度上和如何提高一台服务器的整体性能的思路是很类似的,然而自古华山不止一条路,条条道路通罗马,除了简单提升控制器芯片的性能外,聪明的设计师们会独辟蹊径,从其他的方面提升存储器的性能,方法之一就是把存储器底层lun打散到多个磁盘的存储虚拟化技术。这种技术的最大特点就是使得该存储阵列的控制器能够象马克思著作里面描述的资本家一样最大程度地攫取存储器中每一块磁盘的最大性能(每次从主机端得到一个IO请求,都调动存储器内尽可能多的磁盘快速运转来响应)。
* Y! \9 V9 Z [* ]
/ f0 m0 C. l( @, ]! T0 w5 v. ]* u. @- M' b6 ]上图是一张我们经常能够看到的磁盘的参数图(包括常见的Seagate公司和HGST公司的常见磁盘型号,73GB、146GB、300GB 转速为15K/10K RPM的磁盘),可以看到影响单个磁盘性能的主要参数包括Seek time(磁头定位寻道时间)和average latency time(和磁盘转速有关)。掌握了这两个关键指标,基本上我们可以确认存储器中单个磁盘在cache不命中的情况下的最大IOPS和顺序吞吐量等性能指标。
: R* f6 l' T4 _- w5 {& Q; ]$ [如一块146GB 转速15000RMP的磁盘的平均写性能为164个IO:
) s9 {) V, d+ w/ \Avg 146K write IOPS = 1000ms / (4.1 + 2.01) = 164
而一块400GB 转速10000RPM的磁盘的平均读性能为127个IO:
! v' j0 ^6 ]3 T6 R {4 ]1 b: r$ z
Avg 300J read IOPS = 1000ms / (4.9 + 2.99) = 127 % S1 ^$ i/ \' c# z' \2 B0 d
( A: r5 s+ Z0 P9 Q0 d% E
由于缓存命中率这个指标是无法事先设定的(一般开放系统中存储器系统的缓存命中率低于20%),因此保守情况下我们是通过该存储器磁盘的性能来估算该配置下存储器的整体性能指标。但是这个所谓的保守指标往往也是很不准确的,为什么会这样呢?
7 p2 J8 W. V: s; ^7 } x3 a2 4 C, `: m9 q d# u m! }* n1 l下面通过一个系统管理员和DBA的亲身经历来说明一下。很多时候,当IT业务系统出现性能问题,我们都会安排性能调优,这个性能调优当然包括很多方面(应用、数据库、主机、存储和网络),而且很多时候整个系统通过调优后都能够更加高效地运行。请注意,调优的本质是:系统整体资源是能够支撑该业务系统的,只是因为资源分配不合理才导致性能问题。所以调优的工作就是把IT资源更加合理分配的过程。
1 U, ~" a0 ?7 z m5 B% A那么在存储器方面的调优主要包括什么呢?我们把存储器细细分解一下,看看可以从哪些地方打注意:
1 h( Z! q# ?2 Q1.
控制器方面:模块化存储器的控制器的资源一般是固定死的很难改变;因此一旦你买好了一个模块化阵列,想通过修改什么公开的参数去提升控制器性能一般没戏(除非是同一个系列控制器不同等级的控制器升级,比如从HP EVA 6400控制器升级到HP EVA 8400,把EMC CX300控制器头升级到CX700,而磁盘笼子里面的数据不变,但实际操作中由于商务原因很少有人这么做);
2.
缓存命中率方面:前文说过,开放式系统的缓存命中率不高,一般只有20%左右,而缓存命中率到底能到多少本身就是个难以人为调优的问题(如果该IO类型是离散型随机IO,比如说用户到电信公司每个月查自己的话费,用户往往一个月就查询一次当月的记录,这在存储层面表现为从磁盘中找到一个数据并且load到缓存中,返回给主机查询结果。用户在查询到并且缴款以后短期内通常也不会再去查询当月话费,因此对于这种应用,不管你存储器的是32GB、16GB还是8GB,从控制器的缓存命中率角度来讲通通表现为缓存不命中)。因此想提升缓存命中率在存储器这端是别指望了,除非在应用端或者主机端做优化;
3.! X8 K0 O0 Z) B" H
磁盘性能方面:前文我们已经分析过,单个磁盘性能基本上是固定的,除非是再掏银子买更多的磁盘,否则没戏。由于更多的磁盘确实能够带来更多的IOPS。因此通过买新的磁盘,或者重新分配已经购买了的磁盘到热点数据组中确实是常用的存储器性能调优方法。所谓人多力量大嘛。
现在我们找到了关键点,即消除磁盘热点。磁盘热点本质上是什么呢:我们通过下图举例说明:传统的磁盘阵列是通过RAID技术来保护数据的,比如下图中,把每6块磁盘做成一个RAID 5的RAID磁盘组(RAID GROUP),如果一个存储器购买初期配置了18块磁盘,并18块磁盘组合成为3个RAID磁盘组(从上往下以此为是RAID Group 0、RAID Group 1和Raid Group 2),系统管理员在每个RAID组上再进一步划分lun映射给主机,每个lun从主机的角度看就是一个个磁盘。用户把磁盘阵列配置好后,把数据库装在该存储阵列上。比如数据库有三个表空间分别映射到三个磁盘组上。
假设说三个表空间的数据访问频率都是一样的,那么这种传统的磁盘组保护方式就能够很好地工作。但实际情况下往往很难做到三个表空间的访问频率做到平均,如果出现一个表空间访问频率超级高(想象一下正好那个表空间中存储了XX车模的XX劲爆新闻数据),导致支撑该表空间的磁盘组(RAID group)里面的6块磁盘即使满负荷运行(每块盘都提供了最高的IOPS)也无法满足前端应用的需求,而支撑其他表空间的RAID group里面的磁盘想帮忙也只能干瞪眼......
/ u' y4 B* z9 a+ \
上图比较生动地表现了我们所说热点问题,说白了就是由于传统的存储器采用的是把RAID group磁盘组建立在预先固定分配好的几块磁盘上,而应用访问数据空间是随机的,这样有可能会导致磁盘资源整体分配不均衡(注意:不是说该存储器的整体磁盘资源不够,而是针对热点lun的底层磁盘资源分配不均衡)。在这种情况下,最好的方法就是做磁盘分配的再调优,也就是说希望能够通过添加更多的磁盘消除该热点数据。说来容易,做起来难,这不仅仅是简单添加磁盘就能做到的,一般通过下面几种思路来实现: 3 Z& X* x% {4 G9 `( H3 E: D
1.
第一种方法是从存储底层做文章,对于文件系统层面、数据库层面是透明的。这个思路的最大好处是应用层、操作系统层的配置文件不用做任何改动,然而最大的挑战确是往热点表空间上的RAID group中添加更多磁盘并且重新去条带化的过程耗时耗力,一般经历这么一折腾,磁盘上的数据都会消失,因此事先必须把数据先备份出来,等底层重构好后再把数据恢复回来,显然这种思路的停机时间较长;
2.
第二种思路是从文件系统做文章,通过LV 层面的条带化实现。传统的商用UNIX环境中,如果是HPUX或者AIX都配备有内置的LVM,Solaris则需要配置Storage Foundation可以做到LV层的在线扩展,通过LV的一些精细地操作,可以间接实现此类功能。如果按照这种思路调优,也强烈建议事先先做数据备份,同样停机时间较长;
3.' ?7 c8 I4 ?6 g" T
第三种是从数据库层面做文章,前提是数据库本身支持表空间的在线扩展。通过表空间在线添加更多的数据文件(LV),这样新写入的数据将写到新的lun里面。这些操作工作对于DBA有较高的要求,而且还面临一个问题是已有的热点文件还是很难再平衡Re-balance;
4.; k; d$ {3 v/ o: ]) ]9 Q
最新的一种方法是某些数据库自己内置的卷管理功能,能够实现再打散。不过这需要安装数据库的最新版本,而且这个功能本身还很新,在关键应用环境中很少使用。
0 \' K: ^; s; J7 c
通过对于上述四种方法的分析和综合比较,我们可以发现每种方法都有自己的缺点,往往对IT系统管理人员要求很高,甚至还需要安装一些付费的商用软件或者特定的数据库,否则磁盘层面热点问题很难彻底解决。比如很多windows或简化版的linux环境是没有LVM级别的卷管理软件的;或者说DBA和系统管理尽管理论上知道怎么再平衡数据,但是实际环境总是因为害怕出错或者停机时间较长,不敢真正下决心解决这个问题;当然更可怕的事情是,也许花了大力气按照现在的业务系统特点做了数据热点迁移,可是天算不如人算,迁移成功后发现原来的热点数据变得不“热”了,而非热点数据又变“热”了,又要重新安排存储底层的再优化,这简直就是恶梦......
HP EVA系列:存储底层打散的存储虚拟化技术的先锋
! x) E, _! J, {4 R$ S
上述这些问题,就是HP 推出EVA存储器希望解决的。EVA全称是Enterprise Virtual Array,企业级虚拟磁盘阵列,是前Compaq公司(2002年被HP公司并购)Alpha团队流传至今且发扬光大的重要成果(还有一个应该是 OpenVMS,可惜True64 UNIX和Alpha芯片这些好东东已经消失了)。
0 Y/ h4 E4 g. e" i& T9 e
笔者2000年早期曾经有幸和Compaq公司设计这款控制器的一位华裔科学家深聊过几次,并且通过几次邮件讨论EVA,她多次提到EVA存储阵列设计的最大理念就是突破了磁盘组(RAID group)和物理磁盘之间固定对应的关系,而是把EVA里面的磁盘当作一个统一的单元池来分配,这个池称为disk group(概念上和RAID group类似),而lun将建立在这个由众多磁盘组成的disk group磁盘组里面,更多的磁盘当然可以提供更多的整体性能,这样就一举消除了单个lun只能提供有限的IOPS的性能瓶颈问题。通过底层虚拟化的资源池,从磁盘底层解决了问题,无需用户耗时耗力地干预。$ N! c 9 q4 [! s" C4 v0 \
. A, ?- p) e$ Y! N8 p7 r+ E
& F6 T* _7 R6 s, [ V' H4 S: K$ ^
下图所示,在EVA存储器的配置过程中,把磁盘加入到disk group中去后(如图是8块磁盘),EVA会自动把这些磁盘均分成若干小条块(2MB),建立在该disk group的lun这自动拥有了8块磁盘的整体性能。1 Z; d6 k& e2 r3 Y" v
4 o. J3 p) P( v, M* j( ]
0 W# @8 v- r4 C+ K当用户需要该lun或者disk group具备更多的IO性能时,只需要点击一下鼠标,将更多的磁盘加入到disk group中,则数据将自动再平衡,整个过程完全有GUI界面完成,省时省力,底层由ASIC芯片硬件处理,完全不需要担心出错,极大程度上把系统管理从繁琐的存储配置工作中解放出来。
当然,能够称为Enterpsie级别的阵列(注意EVA的一个字母E代表着Enterprise),是因为EVA还具有一个非常特别的设计思路,即可以自动跨越多个磁盘柜创建disk group,这样一个lun也跨越了多个磁盘柜。当EVA配置了多个磁盘柜时,这种设计思路带来了两个好处
1.; \- ?) P2 l/ e7 ^+
更大程度地提高了磁盘阵列数据的高可靠性,即使一个磁盘柜down掉也不会影响存储器每个lun的正常工作。(跨磁盘柜做RAID一般只有在传统的高端阵列如HP XP系列和EMC Symmetrix系列才能提供);
2.
提供了更多的IO并发吞吐能力,每个IO是跨越多个磁盘后端通道从多个磁盘柜中发出;要知道EVA刚刚发布的2002年,从第三方SPC测中可以看到其SPC IOS性能指标上直逼传统意义上的IBM大存储器Shark ESS800,真是让人大吃一惊。
附:RSS (Redundant Storage Set)是EVA中一个重要的概念: 在Disk Group中逻辑的划分出一个或多个子RAID组,每一组叫做一个RSS,由最少6块,最多11块硬盘组成,RSS的划分由EVA控制器自行控制,人工无法干预。RSS的建议纵向分布,即RSS组中的每一块硬盘纵向分布在被一个disk enclosure中,当然enclosure需要至少也是6个。目前RSS分布情况在CommandView中已经不能看到了,如果想获得,需要使用 SSSU或是Navigetor。
l
PSEGs (Physical Segments Allocation): 最小的数据分配单元,大小为2MB。
l
RStores (Reliable Storage Allocation): 基于PSEGs的可靠的数据分配方式,依据不同的VRAID选择,会有不同的组合方式,具体可以参考下图。RStores以Sript方式将数据存储在PSEGs中,Chunk大小为128kb。
l
VG (Virtual Disk): 通过RStores的组合,形成VG,也就是LUN的概念。
l
DG (Disk Group): 顾名思义,有多块物理硬盘组合而成。
4 }9 A# [- Y8 b6 L/ `0 h
' Y ~: S; ' F$ y x7 Q4 ]( e ^: e9 s
基于以上的机制,EVA可以实现在一个DG中同时出现多块硬盘故障,而不会影响数据的完整性,前提是这些损坏的硬盘不可以在同一时间内属于一个RSS组。
. j! Q( u( d$ J% {
HP EVA控制器从早期的EVA 2C12D,发展到后来的EVA 5000/3000系列,再到后来的EVA 4000/6000/8000,EVA 4100/6100/8100,到最新的EVA4400/6400/8400,接口和控制器芯片方面不断更新,但是最核心和最有价值的地方还是其底层非常彻底的底层存储虚拟化技术,正是这些设计的原因,笔者称HP EVA系列存储器是存储底层虚拟化技术的先锋。
* }6 i6 N( i( v" U5 s$ X
HP EVA存储器在和业界其他模块化控制器相比也许不是最快的,但是在大部分情况下使用EVA存储器的IT系统性能都不错,很大程度上得益于这种底层完全虚拟化RAID技术(VRAID)。就像傻瓜数码相机的设计理念一样,简单易用,也许无法把相片拍到极致完美,但是至少是所见即所得。而如果是使用专业相机,如果你不是特别熟悉快门曝光等参数,很多新手用专业相机拍摄的效果也不见得比傻瓜数码相机好。
最后说一点,虽然把IO从底层打散到多个磁盘可以提高性能,但过犹不及,分散得无限彻底却不一定是件好事。想象一下,如果是多个高IO负荷的应用程序同时共用这些被整体虚拟化后的磁盘资源,也可能会发生互相争抢磁盘资源的情况,因此建议对于不同的高负载应用程序对应的磁盘,分别划分到不同的EVA的 disk group中去,实现分散和集中的平衡。HP EVA支持多个disk group,每个disk group中的磁盘底层完全虚拟化打散,也支持动态加入磁盘到任意一个disk group中,做到性能和容量同时提升。
附:据称HP为了统一存储器命名,EVA不久后将改名为HP StorageWorks P6000系列,具体最新型号参数请参考相关网站和原厂销售人员。
探索底层虚拟化技术产品的昨天、今天和明天5 G; N& G: _% `6
前文谈到,底层虚拟化技术设计的初衷是因为单个磁盘的速度是有限的,为了提升存储IO响应时间,把数据打散到尽可能多的磁盘里面,这样得到更好的性能。有很多产品一直沿着这个思路做,如上文中提到的HP EVA系列存储器。不过现在也有越来越多的存储器在吸取了类似的思路,纷纷推出类似功能,纵观今天的存储器市场,笔者把这些产品进一步细分成两种技术流派:
1.
1 以HP EVA为代表,还有新兴发布的IBM的XIV系列存储器、DELL公司的Equalogical系列存储器、Compllent公司的存储器、3par公司的Titan系列存储器,这类存储器的重要特点是没有历史包袱,从设计一开始就引进了底层磁盘打散的设计理念,属于彻彻底底地底层虚拟化存储器;
2.0 u" g; P7 }$ n( O9 g
2 另外也有一些历史悠久的存储厂商,由于历史原因底层RAID技术上已经有了千锤百炼的微码(包括要支持大机等),因此在传统的lun配置基础上再做一些文章,比如EMC有个meta. lun技术在CX的lun一层做再次打散,HDS AMS2000也在做完RAID group后通过HDP再次打散,HDS USP V(HP XP24000)系列采取的是ldev一层(即lun级别)上推出了thin provision的HDP技术,其本质是把已经做好的lun再放到一个disk pool里面再做打散,这个概念有点类似与在控制器层面做了一层LVM。请注意,对于这样先天不虚拟,靠后天通过一些优化实现打散的存储器产品来说,并不是所有的应用都推荐采用底层数据打散的RAID机制,要看应用特点根据厂商的Best Practice来确定。
8 A# b; e/ `$ u, f! q: u
然而如果要谈到底层虚拟化的老祖宗,HP EVA确不是第一个,但是是最先成名的一个(就像很多人都说王治郅是第一个登录NBA的中国球员,其实不是,第一个是中国早期的著名球星宋涛)。要谈到虚拟化存储的鼻祖(至少在笔者的学识范围内),就必须谈到一个古老的产品,相比现在的EVA等虚拟化存储器,从设计理念上最先进的反而是2000年初HP生产的一款存储设备叫Auto Raid,第一个版本是采用SCSI接口,后来改成光纤接口更名叫VA(virtual array),包括VA7100/7400/7110/7410,本来还有更多更强的型号比如7600等还没有来得及发布,就随着HP收购compaq,采用原DEC的EVA系列后,把整个VA的产品线都停止了(很可惜哦)。8 S* w6 ?3 ]2 r" O
( n" `7 X) k9 h: M H% H& d
为什么说他的概念是我最为推荐的呢,VA的思路即使是现在看起来(请注意老HP十多年前就有了成熟的上市产品哦)都是相当超前的(比EVA/XIV/3PAR领先不知道多少),原因如下:$ o! S2 W6 M7 G+ G4 l. t& O
1.
VA底层也是完全虚拟的(这一点现在的产品也是一样)
2.
VA里面的数据有两种RAID方式,一种是VRAID 1+0,一种是VRAID 6,(请注意绝大多数VRAID厂商还没有能够推出成熟的VRAID 6的技术,即使有也是刚刚推出)
3.
你的数据到底是存VRAID 1+0还是VRAID 6不是用户自己能够控制的,VA会自动根据读写的频率来把你的数据做自动摆放(这点好象没有产品这么做)
4.4 W4 }7 s8 f8 i- u: @5 V* I0 M
当年pool里面的空间使用率不到50%时,所有数据都是VRAID 1+0最高性能
5.
这么多牛x的思路(还有更多不做叙述了)请注意HP公司在2000年左右就能做出成品,并且还做了几代,牛x吧......要知道10年前我可是弄了好久才明白VA的伟大思路,当时给我的震撼那可是“相当的大”(模仿宋丹丹的口气),所以俺看现在所有的所谓虚拟化产品都觉得不过尔尔了
8 X- @! J7 H3 V
' Z3 u& p, B4 r1 Z: c* J4 g
估计有看官要说了,这么牛x的产品为什么HP不继续坚持下去了,反而在收购compaq以后采用EVA呢(我记得当年Compaq的兄弟在激动地介绍EVA的设计思路时,惊奇地发现很多HP的兄弟都觉得不以为然),原因是......- v7 l9 O2 E7 ~( U6 T! ~$ r
$ E, e, r: ]& e% ^; s4 A% h0 \
原因就是尽管设计理念出色,但是性能却实在是不怎么地,应该说是实在是太一般(这款产品反正已经停产多年了,HP的fans请不要扔砖头哈)。而且问题多多经常还是莫名其妙的问题,我还能回忆起经常有HP的技术人员很狼狈地在用户那边解释道歉,卖的时候讲得天花乱坠,哪能想到这么多问题呢...那么问题出在哪里呢......
有几个地方是VA的致命伤:9 T. c* v6 S# a0 {
1., \! w% H- Z4 X, D$ d
算法实在过于复杂,虚拟得一塌糊涂,搞得磁盘阵列在应用忙和不忙的时候磁盘灯都在乱闪(在不停地打散啊,特别是新加了磁盘后继续打散),我的乖乖
. P1 z, {8 X- W* e" n
2.+ i 8 K6 ~3 R* c$ a9 y/ i
VA是一个双控制器的存储,就像现在的EVA/CX/DS4000的设计理念一样是双控制器,双控制而不像大存储器那样具备多处理器芯片,也就意味着控制器的处理能力是有限的,试想本身要响应主机IO就那么忙了,还要底层RAID保护那么多乱七八糟的活要干,不累才怪呢......
因此再次向有伟大设计理念的VA致敬,你辛苦了,确实该好好休息了,或者说永远地休息了......你的后来者EVA已经替你扛起了底层存储虚拟化的大旗,无论如何HP的存储器算是存储底层虚拟化技术的先锋!
昨天的VA已经完成了其历史使命,今天的HP EVA存储器/HP P4000存储器/IBM XIV存储器/DELL Equalogical存储器等虚拟化精英们正活跃在存储舞台,我们期待新一代的存储底层虚拟化技术的进一步发展......
超级双节点集群存储器——IBM DS8000系列介绍
" n: _) a- Z* ~
本章节谈的依然是基于双节点集群架构的存储器,除了前面提到的EMC CX系列,IBM DS系列、HP EVA系列等主流品种外,还有一款存储器产品是不得不提的,这是一个在企业级赫赫有名的存储产品IBM Shark系列,现在改名叫DS8000。
Shark/DS8000应该是属于一款跨界产品(就像Nissan有款跨界车叫逍客一样,兼具轿车和越野车的特点),从硬件指标上来讲属于企业级存储器范畴,但是从体系结构来讲属于双节点集群架构,因此我称其为超级双节点集群存储器器。3 I; D2 U& C$ W L% E3 ^0 ?8 6 U- A
我们来看看Shark发布的历史,从IBM第一次发布当时的2105型号(具体时间不太记得了,应该是1998年吧),到后来经历了一系列的变化3 o% ?( u& F; d: ^3 a
l: D8 C3 M7 _/ [8 n
IBM企业存储服务器E10
l
IBM企业存储服务器E20
l
IBM企业存储服务器F10
l
IBM企业存储服务器F20
l- Q. a9 c9 @: i3 P0 }+ k2 D
IBM TotalStorage企业存储服务器ESS800
l
IBM TotalStorage企业存储服务器ESS750版
在上述版本中的所有产品,我们都可以称作为为IBM shark(鲨鱼)系列,很霸气的名字,让人想起了NBA的巨人中锋奥尼尔。
* X4 W+ x& H+ x
' @5 f' b) r. n( Q: t8 H; S
我们来看看 Shark存储器的体系架构图,总体设计思路如上图所示,shark的核心是两台IBM小型机组成cluster(左边叫cluster 0,右边叫cluster 1),每台小型机上插上FC接口卡当作存储器前端主机通道卡和前端主机接口相连,插上磁盘接口卡当作存储器的后端磁盘通道卡和后端磁盘相连,利用小型机内部的cache和NVS(不掉电缓存)作为整个存储器的缓存,其中NVS主要用作写IO加速。
附:Shark 有两个版本、4种型号。E10和E20是旧型号,每RS/6000只配备了3条PCI总线和3GB高速缓存。F10和F20为新型号,每RS/6000配备了4条PCI总线和16GB高速缓存(总计32GB)。F10可容纳多达64张磁盘,F20则可使用扩展机箱,扩展至上限384张磁盘。
9 D7 o6 K* o* I" T- d
到了2003年,IBM升级Shark系列到ESS800系列存储器,下图是IBM将shark升级到ESS800以后的体系架构图,IBM进一步升级了该存储器内部的小型机档次和CPU处理能力,进一步地升级了缓存容量、前端主机接口数量和后端磁盘通道数量,从而提供更高的性能。为了增加市场份额,IBM进一步推出了ESS750系列,其实ESS750是ESS800的一个简化版本,其核心架构没有任何变化。( f; H" T$ ?0 q9 ]( D: k
) K, r9 S9 c7 m1 P' h
直到ESS800这个版本,IBM仍然采用了SSA技术作为该存储器的后端(参考前文介绍的7133技术),可见IBM对于环路技术的确是情有独钟。
# _4 F) @( t4 n
到了2005年,IBM重新统一了整个存储器的命名,全部用DS系列命名所有的存储阵列产品,重新升级后的Shark系列被重新命名为DS8000系列,分为DS8100和DS8300。而原来的FASTT系列改名为DS4000系列。到了这一点,DS8000开始采用了全光纤后端磁盘技术,并推出了迷你版本的DS6000扩大其产品市场占有率,一时间也产生了DS6000和DS4000将来谁是IBM中端存储器市场的主推产品的争议性话题
到了2006年,IBM进一步升级到了DS8000 turbo,我们来看看IBM DS8100 turbo和DS8300 turbo的一些核心参数:+ [$ B/ ~3 s' X) h. `1 ^
, w# p k7 D: s4 ?* \
2-Way (DS8100 Turbo Models)
·% ?% M" o9 w8 Y- l- R, L
Two dual POWER5+TM based processor servers
·
Up to 128GB Cache
·
8 to 64„ 4Gb or 2Gb FC/FICON – 4 to 32 ESCON Ports
·7 ~. a$ E p/ y7 _3 d8 ?, Q
16 to 384 HDD 6 T9 V! f; t; a0 K/ X! J3 Q# J9 o
− Intermixable disk drive packs
• 73GB and 146GB 15k RPM FC
• 146GB and 300GB 10k RPM FC2 a" F" {. i$ h; R3 Q ]( R4 H/ u
• 500GB 7200 RPM FATA
·
Physical capacity from 1.1TB up to 192TB
# r: g4 K% K% ~% d; I6 D4 H
5 M% X- A6 {/ y. Q$ r
4-Way (DS8300 Turbo Models)0 r% U+ o: F. y+ f- ?
·
Two four processor POWER5+TM based servers
·3 O8 l, H0 N- f% J+ p- E
Up to 256GB Cache
·1 q7 T" l8 y( g. ~; @
8 to 128 4Gb or 2Gb FC/FICON – 4 to 64 ESCON Ports
·6 z& l. H$ r- Q( @& n$ R) z8 n( m
16 to 640* HDDs
− Intermixable disk drive packs
• 73GB and 146GB 15k RPM FC
• 146GB and 300GB 10k RPM FC
• 500GB 7200 RPM FATA
·6 ^6 z3 V8 F% E% P# a2 b6 A0 Y
Physical capacity from 1.1TB up to 320TB*
! I' @0 I" @5 ?7 C
( W3 {6 \; B4 r5 U
而下图是IBM DS8000系列的体系架构图:
- c" I) G( z7 x+ M1 @
IBM把这种体系架构称作Seascape(海景)体系架构,注:Seascape体系架构是整个Shark系列的灵魂。
我们通过第一代的shark到现在市场上常见的DS8000的几代存储器的体系架构图,可以很清楚地发现IBM企业级存储器设计思路:: J9 G! z# D0 f4 D1 M& j# }+ q9 g
1." w% B% `/ k1 H5 Q% g3 K8 F
从整体处理能力来讲:存储器体系架构是以核心服务器为中心,随着IBM小型机中power芯片的升级而升级整个存储器的核心处理部分;这是IBM和其他存储器厂商最大的不同,IBM最大资本在于其power芯片(power芯片,安腾芯片和ultrasparc是UNIX服务器芯片的三巨头之一),把power芯片的核动力发挥到关键这也完全和IBM公司在服务器领域的深厚积累有关,这是其他专业存储厂商无法做到的;虽然也有不少竞争对手把IBM这样的设计称为“伪高端存储”,说其只是server based体系架构。这样说是有一定道理,但是从另外一个方面看,其实存储器本质就是计算机(前文笔者无数次谈过这个观点),我们敬爱的小平同志说过“不管黑猫白猫,能抓老鼠的就是好猫”,如果这样设计真的能够做到高性能,过于拘泥于其体系架构其实也无太大的现实意义;
2.
从可靠性安全性来讲:很多读者会问,其实Shark本质上采用的不正是集群技术么?这样讲也是有一定道理的,很多模块化阵列采用的是基于IA芯片的PC服务器组成的cluster,而seascape是以两台基于power PC芯片为核心的IBM小型机为核心。但有一点需要指出的是普通的集群架构的模块化存储采用的是非对称式Asymmetric体系架构,两个控制器模块无法同时访问同一个lun,而IBM Seacape架构无此限制(关于Symmetric和Asymmetric架构的区别和定义,请参考前文章节详细解释);而且shark内部将整个存储器分为cluster 1和cluster 2,两个部分理论上是互为备份的;
3.: c& u$ f6 p& b4 {# s; [
从可扩展性来讲:IBM Seascape架构的优势是勿庸置疑的,power PC的小型机都发展到power 7时代了,其强大的处理能力和系统带宽决定了其前端主机接口数、后端磁盘通道数的扩展能力和cache可扩展能力是普通的PC服务器无法比拟的;
4.0 k& C4 G9 S7 H, C+ e/ i
从存储应用软件的支持能力来讲:同样基于IBM小型机的强大处理能力和技术积累,使得其对于各种软件的开发支持速度,包括多个存储器软件运行的速度都不成问题;
当然,这种架构比起专业的存储器厂商设计的存储器也会有一定的限制,比如:4 s4 g5 O" g. K5 z
1.) t2 w, F2 j3 C4 V( ?- Q/ f
小型机的设计主要强在信息的处理能力,而存储器抢掉的是信息的存储保护能力,两者设计思想并不是完全相同;
2.5 k+ [+ $ ^; v
可靠性比起基于分布式多处理器的架构的存储器可能会稍打些折扣;
3.& n% e% Z4 r: P4 t
两个节点间的互连带宽采用RIO-G环路,效率上值得怀疑
4.
比起专业的存储器厂商,IBM的存储器在功能发布方面多以跟随战略为主(即竞争对手的存储器产品推出什么新功能,IBM在较短时间内开发出类似功能并推出,但主动式创新稍嫌少)
等等,可以说IBM的DS8000系列是一个个性非常鲜明的产品,基于IBM小型机cluster为核心的seascape体系架构充分发挥了IBM power芯片的长处。存储行业中对这个系列的产品褒贬不一。到底如何取舍,需要客户在选型中仔细斟酌,看看您最需要的到底是什么?
附:2009年IBM又升级到了最新的DS8700,其官法宣布的更新如下:
+ ^) B0 O3 N# R% Q5 ^& _ W
Performance7 H& T3 @" K: _: F9 g
+ B) W' ^* K4 V' L% ^
– Up to over 150% performance boost with new IBM POWER6-based controllers ( D7 ]* d' O$ e9 r" R9 q
– New, faster PCI Express (PCI-E) internal fabric enables much higher performance and scalability8 r3 N$ h7 n2 m; w5 W
– Almost 70% faster ASIC on the device adapters4 k- S" R z- `3 Z& _, O: y
– Increased FlashCopy performance in every metric `/ t! z: U% k* z R
– Increased SSD performance on sequential reads " w6 E, L9 K( b$ Q8 k% I! N
$ Q; l) S* T0 e: q4 {
Availability5 b* c0 2 j& f# 2 e& w1 ?7 B
. ?1 {( d$ O1 z2 ~3 P0 Z; K
– Single model, scalable via concurrent upgrade of all components: L2 t, U# C1 E# x9 A' l
– Shorter service windows with faster concurrent microcode updates0 o. i5 Q# i. B' M' O
– Better than 99.999% availability
2 }& b, u0 h/ a- ?
Investment Protection and Scalability
– DS8700 architecture allows for future expansion of additional controllers and future 8Gb Host Adapters
– Future features, such as SSD optimization and M/GM Multiple Session coming soon
9 K$ f& O8 m! i V$ e4 e* [# h
Management
– Simplified management and application-aware FlashCopy% B: _- K, x8 R, f, `9 R: A5 J
Security
– Full Disk Encryption enhancements address PCI-DSS compliance
其中我觉得最关键的一点是IBM DS8700采用了最新的PCI-E技术互连控制器,解决了前文中提到的RIO-G环路瓶颈问题。! r% T" O" u. _: f# S# c# j
这里附上一个小插曲,IBM公司不愧为IT界第一大企业级硬件、软件及服务提供商,以上很多资料,包括很多IBM其他产品的技术细节都可以红皮书Redbook的形式公布出来,大家只要登录http://redbooks.ibm.com 即可找到。/ L# x$ `( _4 `: p
. J% l+ G2 k: l) I! {! B
这是让笔者非常佩服的IBM真正大公司作派,所有的产品资料,能够公开的,IBM都是开诚布公地公开出来供大家学习研究,这点值得所有IT公司学习。笔者不由得想起一个故事,以前很多Netapp的代理都在想尽各种办法弄到netapp存储器的各种内部资料(因为Netapp很多存储服务是开放给代理商做的),而当IBM开始全系列oem netapp以后,很多netapp代理工程师发现只要登录IBM红皮书网站,就可以找到比以前更多、更加系统的关于netapp的技术资料。一个刚刚 OEM某公司产品在不长时间的厂商能够在公开网站上提供比原厂更加���统和详细的技术资料......,my god,这在以往是不可想象的......可以说IBM公司对于技术资料的认真整理和开放程度真是令人钦佩......。