这些卡的最大问题在于它们为您提供4x200GB驱动器而您不能进行硬件攻击(更多关于此处:http://www.intel.com/support/ssdc/hpssd/sb/CS-034181.htm)
所以linux检测到这些驱动器:
> sda – 系统驱动器
> sdb – 卡#1
> sdc – 卡#1
> sdd – 卡#1
> sde – 卡#1
> sdf – 卡#2
> sdg – 卡#2
> sdh – 卡#2
> sdi – 卡#2
> sdj – 卡#3
> sdk – 卡#3
> sdl – 卡#3
> sdm – 卡#3
> sdn – 卡#4
> sdo – 卡片#4
> sdp – 卡#4
> sdq – 卡#4
如果我像普通的那样RAID,让我们说RAID-10,例如卡#1中断,我会同时丢失4个驱动器(sdb,sdc,sdd,sde),这可能会导致数据丢失?
所以我觉得我最喜欢(?)SSD卡,“内部RAID-0”:
$mdadm --create /dev/md0 --level=0 --raid-devices=4 /dev/sd[b-e] $mdadm --create /dev/md1 --level=0 --raid-devices=4 /dev/sd[f-i] $mdadm --create /dev/md2 --level=0 --raid-devices=4 /dev/sd[j-m] $mdadm --create /dev/md3 --level=0 --raid-devices=4 /dev/sd[n-q] $mdadm --create /dev/md4 --level=1 --raid-devices=4 /dev/md[0-3]
但这是一个RAID-01,它没有RAID-10的优势……
所以如果我做RAID-10,我想这样的话:
$mdadm --create /dev/md0 --level=1 --raid-devices=8 /dev/sdb[a-h] $mdadm --create /dev/md1 --level=1 --raid-devices=8 /dev/sdb[i-q] $mdadm --create /dev/md2 --level=0 --raid-devices=2 /dev/md[0-1]
那么问题是,如果卡#1中断会发生什么,我会丢失前4个驱动器,如果在sdc上镜像sdb怎么办?
所以在确定问题之后,我们应该选择什么块大小和块大小来运行Postgresql呢?
我认为我们将使用XFS,但愿意接受想法.
总结一下:
>需要能够在没有dataloss的情况下丢失一张卡(我们有冷备用)
>需要至少获得1600GB的RAID
解决方法
So I was thinking I do like most(?) SSD-cards do anyway,“internal RAID-0”: (snip) But this is a RAID-01 which have no benefits over RAID-10…
唯一要改变的是你的最后一行:
$mdadm --create /dev/md4 --level=10 --raid-devices=4 /dev/md[0-3]
(注意变化:等级= 10)
这实质上将每个卡转换为独立的RAID0阵列,然后创建各个元素的RAID10阵列.它本质上是RAID010(一条条纹镜像).如果任何一张卡死亡,您仍然有另一张卡镜像相同的数据卡.