Best Practice for EMC R22 (part 17)
上一篇 / 下一篇 2006-10-10 08:48:24 / 天气: 晴朗 / 心情: 高兴 / 个人分类:原创/翻译
7s+hN._'^#c,u0二.为可用性和冗余做考虑
5faZnq;Z5d%xh0一个可靠的和冗余的存储网络以SAN的设计开始,这已经超越了这个白皮书的范围。但是,一些存储系统设计方面的问题----例如硬盘和RAID组的选择—--是存储系统理所当然的课题。
请记住一点,动态的LUN的迁移,使在初始化应用后再改变RAID和硬盘的类型变得可能。
1.高可用性的配属
*uY[aM:baf||e{0高度的可用性的配属方法,是定义对应用CLARiiON存储系统的最佳实践。TheEMC CLARiiON Open Systems Configuration Guide概述了配属方法和支持的设备。
/e9kd/mqu
]02. RAID-level的考虑DOIT博客~7e.GNh
大部分CLARiiON存储都使用RAID 1/0或者RAID 5组,因为冗余的striped的RAID类型能提供最好的性能和冗余性。RAID 3提供了和RAID 5一样的的冗余性(一个单一校验硬盘)。
,`!c2{u}}!b0A. RAID 5
6mb$Y ZKO!}h.p_8`0RAID 5最好应用在4-9个硬盘的RAID组里面。更小的组会招致在校验开销上的更高成本。而更大硬盘数的组的主要缺点是在rebuild的时候的数据量的影响。更大的RAID组的rebuild时间会更加长,尽管把大的RAID5组跨越了两个后端的总线上能减小这种影响。Table 5给了对rebuild时间的详细说明。此外,一个更小的组会提供更高层次的可用性,因为显然对比5块硬盘坏2块,10块硬盘坏2块的概率会大得多。
_)|J5wR0对于那些不能接受可能会因为硬盘故障而导致速度减慢的系统,或者数据的完全性是非常重要的,使用RAID 1/0
*G QO8VL&z,~0B. RAID 1/0DOIT博客"I0k'@a&jgRd@
在可用性和冗余性是极为重要的时候,适用RAID 1/0。镜像的RAID比校验配置的冗余性肯定会更加强。此外,一个RAID 1/0只需要两个DAE—--一个对应一个后端总线----这样能让数据的可用性提升到最高可能性级别。“Binding across DAEs”里有更多的信息。最后,Table 5图解了在rebuild情况下Raid 1/0对比Raid 5的优势。DOIT博客yp7AC$u@waT
i1s9~P$icU+A0
C. RAID 3
ns&o8]U*C0RAID 3的硬盘组可以用5块或者9块硬盘建立。冗余性跟RAID 5一致。但是,rebuild会更快一些,因为rebuild的代码会从RAID3使用的大的后端request size中得益。
#E-f f~Dn6xM:|0D.热备份(Hot spares)DOIT博客"]P:y*i t:`1{T
更换的算法如下:最小的热备份硬盘,要跟目标里面选的故障的硬盘的大小一致。第二,把所有的热备份硬盘放在同一个loop里面,因为最好用大小相近的硬盘来代替故障的硬盘。任何不在BCC控制下的硬盘(如2Gb的ATA,必须要有他们自己的热备份硬盘)可以为正常的DAE作为热备份硬盘,所以谨慎地规划LCFC/FC混插的环境,来实现最少为每一种类型的硬盘都安排一个热备份。LCFC可以用来热备FC硬盘,但会有明显的速度的降低。对特定硬盘类型的每两个DAE使用一个热备份的原因是凭经验来做的。他们可以放在除系统硬盘外的任何地方。
3.把RAID组通过总线和DAE绑定DOIT博客p!n6{/h%}b3T~*y
有对老的基于SCSI的系统的工作经验的工程师,会认为需要在校验RAID组里绑定每一个不同硬盘柜里面的硬盘。当每一个盘柜使用的是一条单独的SCSI总线的时候,就会应用这个方法。为可用性考虑是因为SCSI的故障不再适用于光纤。但是,在绑定硬盘的时候,还是有好几个方面需要我们考虑。
,V9gI @`r4TN0A.跨DAE来绑定硬盘DOIT博客#U"yb _)M:[[c"n#M4Y
当绑定的硬盘跨DAE的时候,在现场的一些科目可能会导致很多的顾虑和疑惑。会有性能方面的提升吗?会有冗余方面的提升吗?在两种情形下,这都取决于RAID的配置;而在不同的情形下,这种区别是轻微的。
tli dA0校验的硬盘组(RAID3,RAID5)
u*\l(D#l
q cBW0绑定校验RAID组,把每一个硬盘放在不同的DAE并不能提升性能。但是,这个方式可以轻微地提升数据的可用性。但是,这是非常的笨拙的方式;如果真的要求非常高的可能性,那么使用RAID1/0。请参考“binding across back-end buses”,这里面会提到。
x_5A5i7{"Q`l0RAID 1/0硬盘组
1Se0o4b5H0显然把一个RAID 1/0硬盘组绑定在多于两个DAE的时候,性能并不会得到提升,但这也不会有什么负面的影响。
Uh'eD{~se0B.跨后端总线绑定硬盘DOIT博客yz_8h} fA
目前所有的CLARiiON系统除了CX3-20和CX300之外,都有多于绑定在DAE一组的双后端光纤总线。一个硬盘组里的硬盘可以来自一条,两条或者多条总线。标准的联接DAE的方式是把总线交替地跨越他们,像DPE和第一个DAE使用bus 0,下一个DAE使用bus 1,等等。
校验的硬盘组(RAID3,RAID5)
/J9l+xS/A010个或者更多的校验的硬盘组可以从跨两个总线绑定当中得到更多的好处,因为这帮助减少了rebuild的时间。例如,绑定一个10个硬盘的RAID5,把5个硬盘放在一个DAE,另5个方在下一个DAE。
镜像的硬盘组(RAID1,RAID1/0)
0I PP:c&E6e0跨两条总线绑定镜像的RAID组,可以增加可用性,也会减少rebuild的时间。这个方法确保了在两种(很少出现)情形下的双故障数据下数据的可用性:一个DAE或者冗余后端的总线(双端口故障)。绑定这些硬盘以便让每一个镜像组的primary的硬盘在第一个后端总线,而secondary(镜像)硬盘在第二个后端总线。跨总线的绑定也会有很小但是积极的性能影响。
当建立一个RAID组的时候(或者在绑定命令的时候定义一个特定的LUN),使用Navisphere CLI来跨总线绑定。当指派这些硬盘时,Navisphere CLI使用硬盘的排序,以createrg或者bind命令来创建Primary0,Mirror0,Primary1,Mirror1,等等,命令要按这个顺序。硬盘被指派为Bus_Enclosure_Disk型式。以下是一个例子:绑定来自每一个总线的各自硬盘柜里的前两个硬盘:DOIT博客"n7HG*Io$Bu+jK
Navicli –h <ip address> createrg 55 0_1_0 1_1_0 0_1_1 1_1_1
5Y:UX0u*y9@l0C.通过DPE磁盘绑定
c0[5[d'`0在一个完全停电的情景下,SPS(standby power supply)提供了电池后备电源给SP和系统硬盘。这允许存储系统把写缓存上的内容写入硬盘。
然而,电力到没有系统盘的存储系统的硬盘柜是无法持续的。当存储系统重启的时候,有着显著I/O的LUN将会被检查,使用后台校验流程,来核实又没有任何在进行中的写只完成了部分。后台的校验是一个相当的慢的过程。