2021年6月更新似乎是这样RAIDZ扩展现在正在进行中.它可能会在某个地方出现2022年8月.
我已经写了博客欧宝体育直播官网关于这个新功能。坏消息是,向现有的vdev添加驱动器可能会增加一些开销,但好消息是,这些开销可以恢复。
2017年10月更新|请注意RAIDZ扩展为正在开发的.
RAIDZ扩展(有史以来最受欢迎的ZFS特性?)即将到来@freebsdfndation.在OpenZFS DevSummit上预览!
- OpenZFS (@OpenZFS)10月19日
原文
许多家庭NAS构建者考虑使用ZFS作为文件系统。但是对于ZFS,人们应该注意一个警告。
虽然ZFS是免费软件,但实现ZFS并非免费。关键问题是,与传统RAID解决方案相比,使用ZFS扩展容量的成本更高。
使用ZFS,您要么必须预先购买您预计需要的所有存储,要么将在不需要的冗余上浪费一些硬盘驱动器。ob体育下载
这个事实经常被忽略,但是当您计划构建时,它非常重要。
其他软件RAID解决方案(如Linux MDADM)允许您每次使用一个磁盘扩展现有RAID阵列。对于许多基于硬件的RAID解决方案也是如此。这对于家庭用户来说非常理想,因为您可以根据需要进行扩展。
ZFS不允许这样做!
为了理解为什么使用ZFS可能会花费额外的钱,我们将稍微深入研究ZFS本身。
快速回顾ZFS
上面的模式说明了ZFS的体系结构。你应该从中学到一些东西。
这幅图的主要结论是,您的ZFS池以及文件系统是基于一个或多个vdev的。这些vdev包含了实际的硬盘驱动器。ob体育下载
容错或冗余是在VDEV中解决的。VDEV可以是RAID-1(镜像)、RAID-5 (RAIDZ)或RAID-6 (RAIDZ2)。它甚至可以使用三重奇偶校验(RAID-Z3),但我怀疑你们中的许多人是否会需要它。
所以理解ZFS是很重要的池本身是不容错.如果在池中丢失了单个VDEV,则会丢失整个池。失去池,所有数据都将丢失。
不能将硬盘添加到VDEV中ob体育下载
现在很重要的是要明白你不能将硬盘添加到VDEob体育下载V中.
从家庭NAS构建器的角度来看,这是ZFS的主要限制。
如果需要扩展存储池的存储容量,需要增加额外的vdev。而且因为每个VDEV都需要处理自己的冗余,所以还需要购买额外的驱动器以实现平价。
我将很快补充说,有一个方法:一个接一个地替换VDEV中的每个硬盘驱动器,使用更高容量的硬盘驱动器。ob体育下载你将不得不“重建”或“resilver”VDEV后每次更换,但它将工作,尽管它有点麻烦和相当昂贵。
所以回到我们的话题:这种限制在现实生活中意味着什么?我举个例子。
假设你计划建造一个容量为4个驱动器的小型NAS.请不要创建一个三个硬盘的RAID-Z,以为你可以在需要的时候添加第四个硬盘,因为那是不可能的。
在本例中,您最好预先购买第四个驱动器并创建一个四个驱动器的RAID-Z。在这个例子中,你被迫预先购买你不需要的额外空间,因为扩展是不可能的。
您可以使用另一个至少包含三个驱动器的VDEV(如果运行RAID-Z)来扩展您的池,但是机箱只能容纳一个额外的驱动器,因此这是行不通的。
考虑到VDEV的限制,计划您的ZFS构建
由于额外的冗余,许多家庭NAS构建器在构建时使用RAID-6 (RAID-Z2)。这是有道理的,因为双驱动器故障并不是闻所未闻的,特别是在重建期间,所有驱动器都需要花费大量时间。
我个人建议运行RAID-Z2而不是RAID-Z1,如果你需要5到6个驱动器,并且需要在额外的硬盘驱动器上花费额外的钱。ob体育下载实际上,使用RAID-Z2或RAID-6,我认为在家里运行一个VDEV最多12个驱动器是完全合理的1.
然而,对于RAID-Z2,“ZFS税”更加明显。由于必须添加额外的VDEV,由于奇偶校验开销,您还将损失两个驱动器。
请注意,“黄色”驱动器标记奇偶校验/冗余开销。它不标记校验数据存在的位置(它在所有驱动器上都有条纹)。
让我们用一个例子来说明上面的图片。NAS机箱最多可以容纳12个驱动器。开始时,RAID-Z2中有6个驱动器。在某些时候,你想要扩展。最便宜的选择是扩展另一个包含四个驱动器的RAID-Z2 (RAID-Z2 VDEV的最小大小)。
每个硬盘售价150美元ob体育下载3.扩展池容量将花费你600美元而不是150美元(单个驱动器),600美元中的300美元(50%)浪费在你并不真正需要的冗余上。
此外,您不能再扩展您的池,因此剩余的两个驱动器插槽是“浪费”的2.你最终最多有10个驱动器。
在本例中,为了利用NAS机箱的驱动器容量,您应该使用另外六个硬盘驱动器进行扩展。ob体育下载这将花费你900美元,而这900美元中的300美元(33%)浪费在冗余上。如上所示。
在存储方面,扩展六个驱动器比扩展四个驱动器更有效。不过,你还需要再花300美元进行扩展,用于支付你可能不会马上需要的存储空间。
但这两种选择都不是那么有效。因为你最终使用四个驱动器进行奇偶校验,在我看来,两个驱动器就足够了。
因此,如果您想从该机箱中获得最大的容量,并且每美元获得最大的空间,您唯一的选择是预先购买所有12个驱动器,并创建一个包含12个驱动器的RAID-Z2。
预先购买所有驱动器是昂贵的,你可能只受益于额外的空间几年的道路。
总结
所以我希望这个例子清楚地说明了当前的问题。使用ZFS,您要么需要预先购买所有存储,要么就会因为不需要的冗余而丢失硬盘,从而降低NAS的最大存储容量。ob体育下载
你必须决定你的需求是什么。ZFS是一个很棒的文件系统,它为您提供了比其他文件系统+ RAID解决方案组合更好的数据完整性保护。
但是实现ZFS有一定的“成本”。您必须决定ZFS对您来说是否值得。
处理一些反馈
我发现我的文章是在BSDNOW的一次vodcast上讨论.
这篇文章也引起了一些关注黑客新闻.
对我来说,有些反馈并不是“错误的”,但感觉很不真诚,或与本文的目标读者无关。我已经提供了链接,所以你可以自己做决定。
本文针对的是一个特定的用户群体,因此您确实应该考虑他们的需求与您的需求有多大的一致性。欧宝体育直播官网
你在引导人们远离ZFS
不,我没有,这也不是我的本意。我自己在两台服务器上运行ZFS。我确实觉得有时ZFS的缺点被掩盖在地毯下,我们应该对寻求建议的人非常开放和清楚。欧宝体育直播官网
使用镜像,而不是RAID-Z(2/3)!
对我来说,家庭NAS建设者没有多大意义。
使用镜子是在浪费空间
建议人们使用镜像而不是RAID-Z(2/3)我确实觉得有点不真诚。因为你丢掉了50%的磁盘容量。在RAIDZ中,你会在3个驱动器中损失33%,在4个驱动器中损失25%。如果我们看一下RAIDZ2, 6个硬盘会损失33%,8个硬盘会损失25%,10个硬盘只会损失20%。
最后,您将占用多个驱动器的存储容量,具体取决于池中的驱动器数量。
增加较大驱动器的镜像
随着时间的推移,更大的磁盘变得更便宜。因此,使用基于比初始驱动器更大的驱动器的镜像来扩展池是有意义的。你的泳池会变大。然而,它仍然只有50%的空间效率。
随机I/O性能更好
使用镜像是运行RAID 10。是的,您可以一次使用两个驱动器来扩展池,并且可以获得更好的随机I/O性能。然而,大多数家用NAS构建器并不关心随机I/O性能。欧宝体育直播官网您只关心是否能够饱和千兆字节并拥有一个大存储池。在这种情况下,你不需要随机IOPs。
如果您在需要高存储性能的存储上运行一些vm,则完全是另一回事。但我认为大多数DIY NAS构建者只是想要一些存储空间来放置大量数据,仅此而已。
RAIDZ2比使用镜像更可靠
RAIDZ2的冗余使用镜像跳动。(如果在重建期间,镜像中幸存的成员发生故障(重建期间池中负担最重的一个磁盘),您将失去池。使用RAIDZ2,任何第二个驱动器都可能失败,但你仍然没问题。
关于镜像,只有一个“优点”将在下一节中讨论。
镜像重建时间更好
使用镜像的唯一好处是,当磁盘发生故障时,新的磁盘正在“重新存储”,据报道,这些重建往往比使用RAID-Z(2/3)更快。我认为这与传统RAID没有什么不同,它与ZFS的主要区别在于ZFS只重建实际数据,而不是整个磁盘。
ZFS重建更快
这确实是ZFS的一个好处。问题是它与你的相关性有多大。
ZFS只重建数据。传统RAID只是重建驱动器上的每一个“位”。后者比前者花费的时间更长。因此,对于遗留RAID,重建时间取决于单个驱动器的大小,而不是数组中的驱动器数量,无论您在数组中存储了多少数据。
我的旧18tb服务器是基于一个使用MDADM的20盘RAID 6。重建一个1tb的硬盘花了5个小时。如果你使用4tb的驱动器,如果允许我推断的话,这将需要20个小时。对于ZFS,如果您只使用50%的容量,那么这些重建时间将是这个的一半。
就我个人而言,对于RAID6或RAIDZ2,重建时间不是一个大问题,因为你可以失去第二个驱动器,但仍然是安全的。
只需将现有驱动器替换为更大的驱动器!
我在上面的文章中简要地提到了这个选项。我再讲一遍。这种方法存在双重问题。首先,您不能根据需要扩展存储容量。你需要替换所有现有较大的驱动器。
这个过程本身也有点麻烦和耗时。您需要逐个更换驱动器。每一次,你都需要“重新分配”你的VDEV。只有当所有驱动器都已更换,您将能够增长您的池的大小。
如果你对这种方法满意——人们已经使用过了——这是一种绕过“zfs税”的方法。
不使用ZFS会将您的数据置于极大的风险之中!
BSDNOW播客似乎同意我的观点,如果你想要真正的数据安全,这个“zfs税”只是你必须付出的代价。要么使用镜像,要么接受额外的奇偶校验冗余。
我的目标不是引导您远离ZFS。以上是事实。ZFS提供了目前没有其他(稳定的)文件系统提供给家庭NAS构建者的东西。但这是有代价的。
问题是,我发现家庭NAS用户购买Synology、QNAP或其他优质品牌的现成NAS是完全合理的。这是大多数人的做法,我认为这是一个合理的选择。如果你这样做,我不认为你是在冒疯狂的风险。
如果你建立自己的首页NAS,合理的接受Windows自带存储空间或硬件RAID的“风险”。或使用Linux与MDADM或硬件RAID。我会说:从技术上讲,ZFS显然是更好的选择,但这些“遗留”选项并没有糟糕到让你用数据承担不合理的风险。
所以使用ZFS是更好的选择,这取决于您和您的特定需求和环境,以决定使用ZFS是否值得。
评论