大型 NAS 的 RAID 配置

kev*_*n42 13 raid files network-attached-storage

我正在考虑构建 24 个 1TB 磁盘 NAS 盒,但我不确定最佳驱动器配置是什么。我正在考虑使用 areca ARC-1280ML-2G 控制器,并将所有 24 个驱动器挂在它上面。

由于我们存储在其上的数据类型,我希望将其全部安装为一个卷。我们有一个疯狂的想法是配置 6 个 4 磁盘 RAID 5 卷,然后在这 6 个卷上执行软件 RAID 5。这意味着任何一卷都可能在我们身上消失,而我们仍然不会丢失数据。

我应该指出,这是一个研发项目,我们有一个即将推出的应用程序,我们将需要数十 TB 的存储空间来实现快速和高可用性。但是对于最初的研发阶段,我们可以接受一些风险。

这种类型的配置的最佳解决方案是什么?使用 24 个 1 TB 磁盘时,可能会有多个磁盘同时出现故障(或在第一次故障后重建卷所需的时间内),因此我很难找到一个好的解决方案。

waz*_*oox 11

这正是我的日常工作……构建 Linux 存储服务器。

  • 槟榔卡没问题。您可以在 RAID-6 中使用它,它将提供合理的安全性。也购买可选的备用电池单元
  • 使用企业级磁盘,而不是桌面驱动器。您将在服务器上多花 400 美元,但这非常值得。购买两个备用驱动器。不要乱用,使用相同型号的磁盘。
  • 对于文件系统,请使用XFS。不是开玩笑,ext3 和朋友们根本无法胜任 16TB+ 文件系统的工作。即使在严重崩溃的情况下,xfs_repair 在 20TB 卷上也将非常快(15 分钟,不多了)。
  • 最好使用LVM2,它会简化存储管理,即使您不打算对其进行太多修改。
  • 安装 areca 管理工具并编写一个 cron 作业,每天向您发送一封包含健康检查的电子邮件。
  • 不要忘记备份。RAID 不是备份;如果有人只是删除了一个重要的文件,如果没有适当的备份,您将无法恢复。我个人使用rdiff-backup将所有重要数据保存在具有一个月历史记录的专用服务器上;您还可以在文件服务器上创建两个 RAID 卷并在另一个上备份一个。


Dav*_*ney 10

已经有你想要的 RAID 级别;它被称为 RAID 10。

近年来,专业级和消费级驱动器的 MTBF 增加了一个数量级,不可纠正错误率保持相对稳定。该速率估计为 10^14 位,因此每 12 TB 读取一位,对于消费类 SATA 驱动器,source .

因此,对于 24Tb 驱动器的每次扫描,从统计上讲,您将遇到至少 2 个单位错误。这些错误中的每一个都会触发 RAID5 重建,更糟糕的是,在重建期间,第二个错误将导致双重故障。


Mat*_*ons 6

哇,RAID5 超过 RAID5?想讨论性能问题?你会有。您挂起它们的主机将让小猫计算奇偶校验,将该奇偶校验写入 3 个驱动器,然后计算该奇偶校验的奇偶校验并将其写入该组的第 4 个驱动器。哇!

让我们谈谈RAID10。它本质上是 RAID 1,但您将驱动器分成两半并进行镜像。它是容错的,因为您可以丢失 2 个驱动器,但仍然没有问题,而且性能非常出色。

如果您不需要大量的空间,但您有一个 24TB 的阵列无所事事,但它绝对必须增加,那么您可以考虑 RAID60。它本质上是使用镜像驱动器集的 RAID6。您将丢失大约一半的驱动器,性能会很差,但您几乎可以保证数据会在那里。

真的,我会选择 RAID10。它表现良好,工作正常。我赞同 Evan 的观点,即您可能不应该用那么多磁盘制作大型 RAID 集,因为正如他所说,fsck 和 chkdsk 之类的东西将永远花费,但在我看来更重要的是,因为读取错误的统计可能性随着单个磁盘大小的增加而增加。我建议每组 7-10 个磁盘。您可以使用该数量的心轴创建 3 个大小合适的 RAID 卷。

无论您选择哪个,请记住将几个磁盘保留在热备件中,以便您可以立即开始重建,而不是让阵列等待您更换它们。磁盘一死,时钟就开始滴答作响,等待另一个磁盘运行。