对于非降级 RAID 6 阵列,为什么大多数实施和文档都要求至少 4 个驱动器?为什么不能有 3 个磁盘,每个条带 1 个数据块和 2 个奇偶校验块?为什么强制至少有 2 个数据块和 2 个奇偶校验块?
我发现
- 你可以用 mdadm 创建一个有 3 个真实磁盘和 1 个丢失磁盘的 RAID 6,但这不是我所说的
- 3 个磁盘的 RAID 6 将只导致裸盘的存储容量只有 1/3。
- 3 磁盘 RAID 6 在功能上与 3 磁盘 RAID 1 阵列类似。不过我怀疑如果 mdadm 的检查同步可以找到并纠正位腐烂在 3 磁盘 raid 1 上。但这是另一个问题的主题。
我之所以问这个问题,是因为我想将我的家庭 DIY NAS 设置更改为类似于商店购买的 NAS 盒中的混合 RAID,这些 NAS 盒提供具有不同大小磁盘的双磁盘冗余。因此,使用多个 mdadm RAID 阵列作为单个逻辑卷中的物理卷,如所述这里但具有 RAID 6 和 3 个磁盘 RAID 1。
如果组成双磁盘冗余 LVM 的所有 RAID 都是 RAID 6,那么看起来会更加一致。
答案1
据我所知原因只是性能问题。没有真正的技术原因。
3 磁盘 raid-1 和 3 磁盘 raid-6 之间存在差异。raid
-6 的冗余计算比 raid-1 更难、更复杂。
因此,使用 3 磁盘 raid-6 需要控制器(硬件)或 CPU(软件 raid)提供更多的马力。
如果需要,重建也会更耗时。
因此,当 raid-1 提供相同级别的冗余度且性能问题较少时,在 3 个磁盘上执行 raid-6 是毫无意义的。
因此,RAID 管理软件的程序员通常甚至不提供 3 磁盘 RAID-6 选项。
(如果我没记错的话,几年前我曾见过允许这样做的 Raid 控制器。我不记得品牌/型号了,但它几乎一定是 Areca 控制器或 HP/Compaq Proliant 控制器之一。我们当时几乎只处理这些。)
答案2
它需要 4 个驱动器,因为 RAID 6 具有块级条带化和双分布式奇偶校验。这允许 2 个驱动器发生故障。您无法使用少于 4 个驱动器来实现此目的并保持所需的冗余。