|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
谁都看的懂:全闪存阵列硬件架构 (转) + l# x& M. b2 q7 a
, V& J( x4 T& Y( {& M) e: ~3 J" }EMC XtremIO是EMC对全闪存阵列市场的突袭,它从底层开始完全根据闪存特性设计,我们来看看Vijay Swami在个人博客上对XtremIO的详细分析。' [' o5 A, i8 b, \0 A, a
8 c5 U" g+ V4 `' l+ E! c! ?硬件架构$ I7 H, @ r# w
8 O0 ]. ^$ X+ g* O- a( b3 h4 X+ ~! @5 `
如下图,一个X-Brick包含两个存储控制器,1个装了25个SSD的DAE,还有两个电池备用电源(BBU:battery backup unit)。每个X-Brick包含有25个400GB的SSD,原始容量10TB,使用的是高端的eMLC NAND Flash,一般擦写寿命比普通的MLC长一个数量级。如果只买一个X-Brick,配有两个BBU,其中一个是为了冗余,如果继续增加X-Brick,那么其他的X-Brick只需要一个BBU。 U6 f% y) u8 M% v9 g2 r3 O& t6 }
* {5 C+ O* {8 [: Y" ^
, `( n9 K$ i! j! L* e% U1 E6 E$ jX-Brick支持级联来增加容量,所以是一种Scale-Out的架构,最多可以到4个甚至8个。 6 j2 p) g. @5 T( X5 d0 q6 H
# y- R0 D1 Q. k) A+ L0 rX-Brick之间采用40Gbps的Infiniband交换机互联。: t2 E1 [! M# q) g0 [1 t
2 M: L z; L7 a/ L7 G( u
上图是一个X-Brick存储控制服务器的所有端口,40Gbps Infiniband接口是为了后端数据连接,其实就是X-Brick之间的互联。那么,阵列和Host控制端怎么进行数据交互呢?可以看出,既可以使用8 Gbps FC,也可以使用10Gbps的iSCSI。那又是怎么连到那么多的SSD上呢?用的是6Gbps的SAS接口,和VNX类似。同时,包括电源和所有的接口都是有冗余的,用来故障时备用。这样一个X-Brick节点自己数据的存储怎么解决呢?它配有两个SSD,用来掉电时保存内存中的元数据,要知道去重还是很占用内存的,因为一般每个数据块需要计算出一个hash值,甚至双重hash,用hash值来判断唯一性。同时还有2个SAS硬盘,作为操作系统运行的磁盘。' q, K# r4 X0 N5 z
4 h$ ~3 h" e" i6 N
这样一来,存储控制器有自己的硬盘,而不占用DAE里面的SSD阵列,闪存阵列只用于存储用户数据,受两个存储控制器管理。这种架构的好处是结构清晰,界限分明,未来还能直接升级存储控制器软硬件而不动闪存阵列里的数据。
3 G" b+ ]' F# ^6 T' g$ ~" r. l+ {, H# h1 P, O7 r, ~0 x8 j
再来看看每个存储控制器的配置:有两个CPU插槽的1U机箱,使用两个8核的Intel Sandy Bridge CPU,256GB内存& C' ~* G5 Z7 n, Z% {9 R
|
|