|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
谁都看的懂:全闪存阵列硬件架构 (转)
' d9 `. ?6 M! n" V; s+ h( Q. d* k; |1 w" n# ]4 `
EMC XtremIO是EMC对全闪存阵列市场的突袭,它从底层开始完全根据闪存特性设计,我们来看看Vijay Swami在个人博客上对XtremIO的详细分析。
6 ~$ n8 E# J0 Q I0 h4 {; v5 e
/ S: L8 t, ?* ^- s: f L/ T' u硬件架构
; t9 z1 r# e2 \. \( q
' R) w: v* N( {* c2 T+ x/ Y! }
2 k, i- l. f- L0 I/ l5 D8 D如下图,一个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。: U. s% o, s1 l& y( d
- E: R7 L- U3 V# `+ y, I8 N7 C1 x. Q& h6 `
X-Brick支持级联来增加容量,所以是一种Scale-Out的架构,最多可以到4个甚至8个。
1 p0 y5 j# p+ v4 w
3 Y' U" [$ o# O' ?4 x4 R _/ NX-Brick之间采用40Gbps的Infiniband交换机互联。3 P( i; C* y8 p$ K' y
/ @5 P! [5 A; ]! 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硬盘,作为操作系统运行的磁盘。
% ?* x+ w1 W, ]$ q# d a g" U
4 A, S: U6 g; y这样一来,存储控制器有自己的硬盘,而不占用DAE里面的SSD阵列,闪存阵列只用于存储用户数据,受两个存储控制器管理。这种架构的好处是结构清晰,界限分明,未来还能直接升级存储控制器软硬件而不动闪存阵列里的数据。 b( W1 I* Q1 p. P% l
* S1 o4 Z" |$ U
再来看看每个存储控制器的配置:有两个CPU插槽的1U机箱,使用两个8核的Intel Sandy Bridge CPU,256GB内存
- h7 N" M) w# Z% W3 g |
|