我们有一个 24 磁盘的 SAN,当前配置为 RAID 50,在两个 RAID 5 阵列中有一个 RAID 0 条带,每个 RAID 5 中有 11 个磁盘。剩余两个磁盘分配为热备用,每个 RAID 5 一个。
我想将此设置改为使用 RAID 50,其中 RAID 0 条带内有三个 RAID 5 阵列。这增加了阵列丢失前可以发生故障的磁盘数量,并降低了同一 RAID 5 阵列中两个磁盘发生故障的可能性。它还可能具有性能优势。
在 RAID 50 设置中增加 RAID 5 阵列数量有什么缺点?显然,您要牺牲可用容量来提高弹性,但是从具有两个较大 RAID 5 阵列的 RAID 50 转变为具有三个(或更多)较小 RAID 5 阵列的 RAID 50 还有其他缺点吗?
答案1
将此 raid-50 阵列移至使用 R5 的较小子集将带来一些优势。在大多数实施中,R5 无法很好地扩展到超过五个驱动器左右,收益会急剧下降,有时(假设九个)驱动器的性能比五个驱动器更差。十一是逼近它,但这些数字在很大程度上取决于您使用的控制器。
随着每个 R5 运行得更高效、更可预测,R0 可以轻松整合它们的性能,您应该会看到实现之间可衡量的性能差异。正如您所提到的,您将能够承受更多驱动器故障。
但是,我一般建议避免使用 RAID-5 阵列。R5 有几个严重缺陷会影响整个阵列的完整性(请参阅有关 RAID-5 写入漏洞的信息),其中最重要的缺陷是由于设计概念本身 - 缺少一个成员的阵列会降级,降级阵列中只需出现一个错误就会损坏数据或破坏整个阵列。从统计上看,当操作阵列中的许多大磁盘时,整个驱动器或更有限区域中出现单个数据错误的可能性很大。显然,热备件可以缓解这个问题,但您仍然会留下一个相当大的漏洞,以便在重建或电源故障期间发生坏事。此外,R5 在降级时性能很差,即使不降级,对于随机写入繁重的工作负载来说也不太理想。
Raid-10 会更加稳定,性能也会更好很多速度更快,但显然存在费用问题。Raid-60 可能是一个很好的折中方案,具体取决于您的工作量,并且不会严重影响您的存储成本。使用两个 R6 可以允许四个驱动器发生故障,而不会发生一次故障,而潜在的灾难即将发生,并且当扩展到该数量的驱动器时,R6 的性能会好得多。