ZFS-RAIDZ-1真的那么糟糕吗?


18

我有一个带有RAID10配置(可用4TB)的4个2TB WD RE4-GP驱动器的NAS服务器。我的空间不足(剩余的可用空间不足1TB)。我有0美元可以花在更大/更多的驱动器/机箱上。

我喜欢我读到的有关ZFS数据完整性功能的知识,这些知识本身就足以让我从现有的XFS(软件)RAID10切换。然后,我了解了ZFS对RAID5的出色实现,因此我认为使用RAIDZ-1甚至可以讨价还价获得多达2TB的可用空间。

不过,我一直在读更多 帖子说差不多,只是从不使用RAIDZ-1。只有RAIDZ-2 +足以应付“实际”驱动器故障。当然,就我而言,RAIDZ-2没有任何意义。最好在单个池(RAID10)中使用两个镜像的vdev。

我是否想为4个2TB驱动器使用RAIDZ-1疯狂吗?

我是否应该仅使用两个镜像vdev(基本上为RAID10)的池,并希望压缩为我提供足够的额外空间?

无论哪种方式,我都计划使用压缩。我只有8GB的RAM(已满),因此,不能选择dedup。

这将在FreeNAS服务器上(即将替换当前的Ubuntu OS),以避免ZFS-on-Linux的稳定性问题。


不知道这是题外话。我正在征求有关服务器正确文件系统配置的建议。
Andrew Ensley 2014年

与RAID10相比,RAIDZ1or2的写入速度也很慢
JamesRyan 2014年

2
如果您有足够的CPU来计算奇偶校验而不降低速度,则对于大多数写入操作,RAIDZ应该与RAID10一样快或更快。RAIDZ将所有内容写入完整的RAID条带中,没有像RAID5那样的读-修改-写周期。因此,您将获得更多的磁盘带宽(更多的数据,更少的开销),并且写入速度应比RAID10快。但是,这样做的缺点是读取速度通常较慢。“每次写一个完整的条带”会导致碎片,并且不会给您带来很多次小读就只读取一部分磁盘的好处。这是一个有意识的设计决定。
Dan Pritts 2014年

我上面所说的只是部分正确。如果您同时进行少量写操作(例如,数据库服务器),RAID10将更快。在RAIDZ中,所有磁盘均对所有写入均处于活动状态。RAID10将它们拆分。我试图解决的问题是RAIDZ消除了RAID5的性能中断和潜在的不安全的读-修改-写周期。
丹·普里兹

RAIDZ2比RAID10更可靠。使用RAIDZ2,任何两个磁盘都可能发生故障,并且您仍然会拥有数据。使用RAID10,两个故障磁盘(在四个磁盘阵列中)可能会导致数据丢失。
克拉斯

Answers:


21

在详细介绍之前,请考虑您的用例。您是否正在存储照片,MP3和DVD翻录?如果是这样,您可能不在乎是否从阵列中永久丢失单个块。另一方面,如果它是重要数据,则可能是一场灾难。

之所以说RAIDZ-1“对于现实世界的故障还不够好”,是因为重建时间到了,您可能会在一个幸存的磁盘上出现潜在的媒体错误。相同的逻辑适用于RAID5。

ZFS在某种程度上减轻了这种故障。如果无法重建RAID5设备,那么您很不幸。复制(剩余)数据并从头开始重建。另一方面,使用ZFS,它将重建除坏块以外的所有块,并让管理员“清除”错误。您将丢失一个文件/文件的一部分,但不会丢失整个阵列。而且,当然,ZFS的奇偶校验意味着您将可靠地获悉存在错误。否则,我相信多个错误很可能(尽管不太可能)会导致重建显然成功,但会给您带来不良数据。

由于ZFS是“ 猖R的分层违规 ”,因此它也知道哪些区域没有数据,因此可以在重建中跳过它们。因此,如果阵列的一半为空,则发生重建错误的可能性只有一半。

通过对阵列进行常规的“ zpool清理”“ mdadm检查”,可以降低任何RAID级别上这类重建错误的可能性。其他RAID也有类似的命令/过程。例如,LSI / dell PERC RAID卡称为“巡读”。这些可以读取所有内容,这可以帮助磁盘驱动器找到失效的扇区,并在它们变为永久性之前重新分配它们。如果它们是永久性的,则RAID系统(ZFS / md / raid卡/其他)可通过奇偶校验重建数据。

即使您使用RAIDZ2或RAID6,定期清理也很重要。

最后一点-任何形式的RAID都不能替代备份-它不能保护您免受意外删除,勒索软件等的侵害。尽管常规ZFS快照可以作为备份策略的一部分。


感谢您的解释。这很有意义,并且与我到目前为止所学到的ZFS相匹配。实际上,我已经用FreeNAS重新加载了服务器,并使用了RAIDZ-1配置。我设置为每月擦洗一次。您是否认为这足够了?还是建议您更频繁地进行磨砂?猖layer的分层冲突是ZFS我最喜欢的功能:-)
Andrew Ensley 2014年

1
我有一个raidz1运行在不同年龄的7个消费者驱动器上。我每2周擦洗一次。它通常会发现错误并予以纠正。我最近丢失了驱动器,并丢失了具有潜在错误的文件。幸运的是,这是一个我可以轻松替换的媒体文件。对于我的重要数据,我当然还有备份。
Dan Pritts 2014年

我要指出的是-与“企业”等级相比,“家用”驱动器的不可恢复误码率要高2个数量级。我仍然很高兴在体面的FC / SAS驱动器上可以接受RAID-5上的复合故障率。但是不会在SATA上执行。
Sobrique 2014年

1
比较两个希捷驱动器只有一个数量级:希捷ST2000DM001:10E14中的1。ST2000NM0033:10E15中的1。但是,确实很难确定驱动机制是否有所不同。我听说可靠的消息来源给出了相反的答案。
Dan Pritts 2014年

2
我发现系统上的SATA电缆坏了-自从更换它以来,我的灌木丛发现零错误。
Dan Pritts 2015年

4

这里的工作有点误解。您看到的很多建议都是基于一个可能不正确的假设。具体来说,是驱动器的不可恢复的误码率。

便宜的“家庭用户”磁盘每10 ^ 14不可恢复的错误率只有1个。

http://www.seagate.com/gb/zh-CN/internal-hard-drives/desktop-hard-drives/desktop-hdd/#specs

在这个级别上,您正在谈论RAID重建期间出现不可恢复的错误的可能性很大,因此您不应该这样做。(快速而肮脏的计算表明,设置5个2TB磁盘RAID-5实际有60%的机会)

但是,对于更昂贵的驱动器,情况并非如此:http : //www.seagate.com/gb/zh-CN/internal-hard-drives/enterprise-hard-drives/hdd/enterprise-performance-15k-hdd/#specs

每10 ^ 16中的1个是100倍更好-意味着5倍2TB的重建失败几率小于1%。(可能更少,因为对于企业使用而言,600GB的心轴通常更有用)。

因此,就我个人而言-我认为RAI​​D-5和RAID-4仍然非常有用,因为RAID-0仍然相当普遍。别忘了-RAID-6的问题在于写入量大。您可以通过大量缓存来部分缓解这种情况,但是仍然会遇到一些麻烦,特别是当您最初使用慢速驱动器时。

从根本上说-永远不要相信您的RAID提供全面的弹性。与驱动器故障相比,数据丢失更多的是“失败”,因此,无论如何,如果您需要关心数据,就需要一个不错的备份策略。


我正在使用4个WD RE4-GP驱动器,这些驱动器在10 ^ 15的不可恢复读取错误中具有<1。
Andrew Ensley 2014年

RAID6的写入损失非常真实。但是,RAID-Z2不受此影响。zfs使所有写操作完全展开。但是,这还有其他负面影响-由于多种原因,它往往会降低读取性能。
Dan Pritts

3

嗯,这里有一些错误的信息。对于4个磁盘,XFS确实没有错。由于性能和可扩展性的原因,我倾向于避免使用ZFS RAIDZ(读取/写入次数低,无法扩展)。如果可以,请使用ZFS镜像。但是,如果有4个磁盘而无处放置OS,则您将失去很多容量,或者必须经过奇怪的分区游戏才能将OS和数据容纳在相同的四个磁盘上。

对于您的用例,我可能不建议使用ZFS。这里的XFS没错。


2
忘了提及该操作系统位于单独的驱动器上。抱歉。我想要的ZFS中没有XFS RAID10的是校验和数据验证,它可以检测(并透明地修复)静默数据错误(驱动器上有一点翻转,而HDD不知道)。我不相信XFS能够做到这一点。
Andrew Ensley 2014年

对于四个磁盘,如果有可能需要扩展或性能很重要,请使用ZFS镜像。我也避免使用FreeNAS,而只在Linux上使用直接的ZFS。
ewwhite 2014年

1
我本人是终端人,所以我绝对不会切换到GUI。通常,我只需要一个稳定的文件系统(尽可能)来保证存储在其中的文件的完整性。我希望在此过程中获得一些空间。我看到ZoL报道了很多问题,其中许多与Ubuntu OS升级有关。groups.google.com/a/zfsonlinux.org/forum /#!searchin / zfs-discuss / ...不想感到痛苦。只是在解释我为什么想我的想法。我当然愿意接受纠正。
Andrew Ensley 2014年

1
没关系。我已经看到FreeNAS(不是FreeBSD)的更多问题,所以这是双向的。那里有信息。我不使用Ubuntu的,但我知道ZFS。我在Linux上的ZFS通常是RHEL或CentOS。这是一个示例工作流程
ewwhite 2014年

1
我在Linux和Centos 6上使用ZFS。我不允许内核或ZFS的自动更新。我遇到了ZFS / SCL中断问题,但是我从未丢失过数据。顺便说一句,FreeBSD具有类似的solaris兼容性例程集,但是它们和ZFS已完全集成到发行版中,这使得使所有组件协同工作变得更加简单。如果我只想要ZFS和文件服务,则可能会运行FreeBSD。实际上,这就是我曾经做过的事情,但是我将盒子用于其他随机物品,这使ZoL更具吸引力。
Dan Pritts 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.