我有一个Linux(Debian / Ubuntu的)服务器与4个英特尔SSD 910 800GB pcie,我需要RAID一起。
这些卡最大的问题是,他们给你4X200GB的驱动器,你不能硬件RAID(更多关于这个: http : //www.intel.com/support/ssdc/hpssd/sb/CS-034181.htm )
所以linux检测到这些驱动器:
如果我想RAID这些像正常,让我们说RAID-10,例如卡#1中断,我会同时失去4个驱动器(sdb,sdc,sdd,sde)这可能会导致数据丢失?
所以我以为我喜欢大多数(?)SSD卡,“内部RAID-0”:
$ mdadm --create /dev/md0 --level=0 --raid-devices=4 /dev/sd[be] $ mdadm --create /dev/md1 --level=0 --raid-devices=4 /dev/sd[fi] $ mdadm --create /dev/md2 --level=0 --raid-devices=4 /dev/sd[jm] $ mdadm --create /dev/md3 --level=0 --raid-devices=4 /dev/sd[nq] $ 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[ah] $ mdadm --create /dev/md1 --level=1 --raid-devices=8 /dev/sdb[iq] $ mdadm --create /dev/md2 --level=0 --raid-devices=2 /dev/md[0-1]
问题是,如果1号卡断了,会发生什么情况,我会丢失前4个驱动器,如果sdb镜像在sdc上呢?
所以在这之后决定问题是,在这个上运行PostgreSQL应该select什么块大小和块大小? 我会认为我们将会使用XFS,但愿意开放。
所以总结一下:
你的第一个直觉是正确的:
所以我以为自己喜欢大多数(?)固态硬盘卡,无论如何,“内部RAID-0”:(片段)但是这是一个RAID-01,没有RAID-10的好处…
唯一改变的是你的最后一行:
$ mdadm --create /dev/md4 --level=10 --raid-devices=4 /dev/md[0-3]
(注意更改:级别= 10)
这本质上是将每张卡片转换成一个独立的RAID0arrays,然后创build一个单独元素的RAID10arrays。 它基本上是RAID010(一条条纹镜像)。 如果任何单张卡片死亡,您仍然拥有另一张具有相同数据镜像的卡片。