AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 30362
Accepted
kevin42
kevin42
Asked: 2009-06-24 07:11:20 +0800 CST2009-06-24 07:11:20 +0800 CST 2009-06-24 07:11:20 +0800 CST

大型 NAS 的 RAID 配置

  • 772

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

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

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

这种配置的最佳解决方案是什么?对于 24 个 1 TB 磁盘,可能会有多个同时发生故障(或者在第一次故障后重建卷所需的时间内),所以我很难找到一个好的解决方案。

files raid network-attached-storage
  • 8 8 个回答
  • 1486 Views

8 个回答

  • Voted
  1. wazoox
    2009-06-24T08:05:39+08:002009-06-24T08:05:39+08:00

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

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

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

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

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

    • 10
  3. Matt Simmons
    2009-06-24T07:21:47+08:002009-06-24T07:21:47+08:00

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

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

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

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

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

    • 6
  4. Matt Rogish
    2009-06-24T07:15:43+08:002009-06-24T07:15:43+08:00

    为什么不是 RAID 1+0?这一切都在控制器级别处理......

    • 2
  5. Evan Anderson
    2009-06-24T07:16:20+08:002009-06-24T07:16:20+08:00

    我知道您说的是“研发”,但您也说的是“高度可用”。我会质疑 DIY 解决方案与购买现成的 SAN 设备来做到这一点的“节省”。当您的 DIY 解决方案出现问题时,您将处于无法联系寻求帮助的令人羡慕的境地。停机时间每小时花费您多少?您可以在停机费用中很快吃掉一些中层 SAN 设备的成本,而忽略与彻底丢失数据相关的费用。

    不管你对底层磁盘做什么,我都不会创建一个那么大的文件系统。

    文件系统损坏是一种真实的可能性(RAID 控制器问题、操作系统错误等)。在这么大的卷中,文件系统检查将花费很长时间。我强烈建议使用可以逻辑组合以显示为单个文件系统的多个卷(通过各种方式——你没有提到操作系统,所以我不能给你具体的想法)。如果您有一些文件系统损坏,您将丢失部分逻辑卷,但您仍然会“启动”。

    举个例子:在 Windows 世界中,在一个 20TB NTFS 卷上运行 CHKDSK 将是SLOW。在那种环境中,我会创建多个较小的 NTFS 卷,并在逻辑上将它们组合成一个带有 DFS 的命名空间。

    • 1
  6. James
    2009-06-24T10:45:51+08:002009-06-24T10:45:51+08:00

    wazoox,答案很好我没有代表给他更多的加分,但我会添加以下内容。

    RAID 6 或每 10 个磁盘至少 2 个实时奇偶校验磁盘,最多 16 个,也就是说,如果您可以花大约一天的时间,性能会受到您的 raid 重建的影响。如果你不能忍受退化,那么它必须是镜像条纹。

    如果您要走 linux 路线,我会使用硬件 RAID 卡(带备用电池)或在磁盘盒中有一个 RAID 控制器。我同意 xfs 是 Linux 上的首选文件系统,但是请注意,如果您需要运行 xfs_check,xfs 上大约 50TB 的文件系统需要超过 16GB 的 RAM。

    我会认真考虑一个好的 NAS 盒子,比如 NetApp,因为从长远来看,它们的工作量要少得多,这取决于您/存储管理员的时间对公司来说价值多少。

    让 nfs/samba 表现良好是一门黑暗的艺术,你是要使用 10GB 以太还是只使用 1GB/秒的聚合?(不要买 Broadcomm 卡,尤其是 10GB 的卡)。

    LVM2 很简单,但不要使用快照,因为它不快。

    请记住,这需要一些时间的备份。

    在系统投入生产之前测试系统可能发生故障的方式,并将其写在您和您的同事在出现问题时可以找到文档的地方。

    • 1
  7. Chopper3
    2009-06-24T12:25:51+08:002009-06-24T12:25:51+08:00

    这取决于您的读/写比率。我们使用许多 HP MSA70 外置 25 磁盘 SAS 驱动器机箱,并始终将它们创建为单个 RAID6 阵列,因为我们的读写比率为 99%:1%,因此我们不关心 R6 的写入速度是最慢的(仍然很快,只是与其他人相比没有那么好)。这样我们就有了 23 个磁盘可用的数据,非常好,就像非常好一样,随机读取和整体读取带宽优势,并且可以承受两次磁盘故障。

    作为一个粗略的指导,一个 RAID5 阵列在一个阵列中不应包含超过 14 个磁盘,而 RAID6 最多应该有 54 个左右的磁盘 - 显然,阵列越大,读写性能和重建速度会较慢,但它可以是一个很好的权衡。

    • 1
  8. Hans Malherbe
    2009-06-24T08:13:55+08:002009-06-24T08:13:55+08:00

    我会添加两个备用磁盘作为开始。

    RAID 5 或 6 适用于随机读取或大量顺序读取和写入。如果您要获得大量小写入,请使用 RAID 10,因为 RAID 5+ 对小写入的影响是 4 倍。

    如果您要打开写入缓存,请记住用电池支持它。

    • 0

相关问题

  • 重复文件查找器[关闭]

  • 递归复制隐藏文件 - Linux

  • 如何在 FreeBSD 中查找文件

  • 在两个位置之间保持数据同步的最有效方法是什么?

  • 在 SQL Server 中,何时应将 PRIMARY Data FileGroup 拆分为辅助数据文件?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve