使用嵌套 RAID 6+1+0 是个好主意吗?

Ali*_*rei 4 linux raid storage mdadm

目前我有 24 个 500 GB 的磁盘,我想使用 Dell Power Edge R730 服务器创建一个更大的嵌套 RAID,有 4 次 RAID 6,每个 6 次 500GB,我想在它们之上添加 RAID 1 和 RAID 0总体而言。

我的问题是:这安全吗?创建这么大的数组值得吗?

我知道我会有惊人的速度,但是维护和故障转移会让我付出代价。

请参阅建议图片(图中有 48 个磁盘)。图片

kas*_*erd 9

仅考虑堆栈每一层所涉及的概念,而不是具体实现,某些应用程序将所有这三种 RAID 模式分层可能是有意义的。

然而,所描绘的图中的布局有一个严重的缺陷。您对图层的排序不正确。为了获得最佳性能和可靠性,您必须交换 RAID-1 和 RAID-6 层的顺序。

通常 RAID-6 配置为允许丢失两个磁盘。因此,一旦丢失了三个磁盘,RAID-6 就会出现故障。这意味着在最坏的情况下,48 个磁盘中的三个丢失将导致 RAID-6 组件之一出现故障。

您的数据将在该事件中幸存下来,但您必须从 9 个正常磁盘和 3 个新磁盘创建一个新的 RAID-6。完成后,您必须同步新创建的 RAID-6 以及将 RAID-1 层从另一个 RAID-6 复制到当前正在同步的 RAID-6。这确实是一个 I/O 密集型操作。

因此,丢失 3 个磁盘的情况需要管理员注意才能恢复,并且 I/O 繁重。

相反,您可以首先使用 RAID-1 将 24 个磁盘分成 12 对,然后将这 12 个 RAID-1 组合成一个 RAID-6。

这样,单个磁盘的丢失总是可以在 RAID-1 层恢复,这比在 RAID-6 层恢复要高效得多。即使丢失了 5 个磁盘,您也可以保证 RAID-6 层将继续存在。

在这两种情况下,您的数据都可以在丢失 5 个磁盘后幸免于难,但恢复的速度有所不同。

在这两种情况下,您的数据都可能因 6 个磁盘的丢失而丢失,但在您描述的场景中,风险比交换层的风险要高得多。

实施细则

使用的层越多,遇到特定实现处理问题的风险就越高。要记住的一个问题是热备件是否可以在结构的各个分支之间共享。另一个是从一个子 RAID 的丢失中自动恢复的程度。例如,如果您在最低层的一个 RAID-1 中丢失了两个磁盘,它是否可以从两个热备件中自动创建一个新的 RAID-1 并将其用作下一层的备件?


Sum*_*min 5

我认为这正在突破 RAID 概念的界限,您会遇到麻烦,PERC 控制器是否允许您将虚拟磁盘添加到另一个阵列?每个人都不会有自己的写入和缓存策略,控制器上的缓存大小是多少 - 无论如何,如果性能是您所追求的,那么您是否看过 Ceph?- 经认证可在 R730 上运行,但您需要一个 SSD 日志磁盘 - 所有写入都发生在 SSD 上并稍后移至阵列,它不需要 RAID 以实现冗余并提供对象、块和文件存储以及纠删码