启动一个带有两个磁盘的 ZFS RAIDZ zpool,然后添加第三个?

启动一个带有两个磁盘的 ZFS RAIDZ zpool,然后添加第三个?

假设我有两个 2TB 的硬盘,我想启动我的第一个 ZFS zpool。是否可以只使用这两个磁盘创建一个 RAIDZ,为我提供 2TB 的可用存储空间(如果我理解正确的话),然后再添加另一个 2TB 的硬盘,使总可用存储空间达到 4TB。我理解正确吗?还是一开始就需要三个硬盘?

我之所以问这个问题,是因为我已经有一个 2TB 的驱动器正在使用,里面装满了文件。我想转换到 zpool,但如果可以的话,我宁愿只购买两个 2TB 驱动器。据我所知,RAIDZ 的行为与 RAID5 类似(我知道有一些主要区别,但在容量方面)。但是,RAID5 需要 3 个以上的驱动器。我想知道 RAIDZ 是否有相同的要求。

如果必须的话,我可以购买三个驱动器并从那里开始,稍后再添加第四个,但如果我可以从两个开始,然后移动到三个,那么这将为我节省 80 美元。

答案1

有些人使用但不推荐的方法:

  1. 创建一个包含 2 个驱动器和一个稀疏文件的池(具有正确的虚拟大小以匹配其他驱动器),然后立即将稀疏文件脱机。这将创建一个降级的 RAID-Z1 池,其容量相当于两个驱动器,并且没有冗余。
  2. 将数据复制到降级池。
  3. 使用第三个磁盘替换脱机的稀疏文件并重新镀银。

创建 vdev 时所包含的“设备”数量在创建后是永久的。因此,在创建时必须有三个“磁盘”。此方法提供了一种创建降级 RAID-Z1 池并在以后恢复缺失冗余的方法。

不推荐使用这种方法,因为在复制时,如果第三个驱动器不存在,则没有冗余/奇偶校验。但它可以工作。

答案2

不幸的是,目前不可能

无法将磁盘作为列添加到 RAID-Z、RAID-Z2 或 RAID-Z3 vdev。此功能取决于即将添加的块指针重写功能。但是,可以创建新的 RAID-Z vdev 并将其添加到 zpool。

RAID-Z1 可能只适用于 2 个驱动器,但如果以后无法添加额外的驱动器,这显然没什么用。就可用存储空间而言,使用的驱动器越多,RAID-Z(如 RAID 5)就越高效。

答案3

RAID-Z1 只能与两个磁盘一起使用,但与镜像相比没有任何优势 - 除非您的两个磁盘具有不同的扇区大小,以便它们无法镜像(例如:新的 4K 扇区磁盘和旧的 512 字节磁盘)。

如前所述,不支持向 RAID-Z 添加设备。如果您想向现有 RAID-Z 添加磁盘,唯一的方法是将数据备份到其他地方,销毁池并使用添加的额外磁盘重新创建池,然后恢复数据。

答案4

需要强调的是:

  • 如果一个磁盘发生故障而事先不知道何时发生故障...那么为什么两个磁盘不能同时发生故障? 或者三个、四个或五个等等?

但是,考虑一下另一种情况:

  1. 一个磁盘发生故障
  2. 你放一个新的,让它“重建”以确保安全
  3. 当这样的“重建”完成时(可能几个小时),另一个磁盘发生故障

你失去了一切!!! 这是容忍两个磁盘同时发生故障的主要原因。

但是如果您真的很偏执(像我一样),那么您只会使用 Stripping,而不会使用其他 RAID 级别。

我疯了吗?当然不会……我不介意一个磁盘故障并丢失所有数据!我真的不会丢失任何东西,因为我真的很偏执。

我的偏执计划:

  • 带有剥离功能的 ZFS(2x、3x、4x......或 10x 磁盘),刚好适合总线的最大带宽(sata III、usb 3.1 gen 2 等)
  • 和其他五个 ZFS 类似(没有电源,因此不会被损坏)

如何使用所有这些 ZFS:

  • 同时只拥有两个(仅用于同步更改)...就像一个主服务器有五个从服务器

偏执的观点:

  • 如果一个 ZFS 出现故障……例如遭到暴风雨袭击、烧毁、被盗等……我在不同的地方(银行、堡垒、互联网云、朋友家、度假屋等)还有五份副本

为了同步其中一些...我必须随身携带一个 ZFS 并在其他物理位置/国家/等进行同步...所以我使用其中一个从属设备。

想想当我在一个 ZFS 上谈论 HDD 时,在另一个 ZFS 上可以是 3.1 Gen2 64GiB USB 棒!不需要大小、类型等相同。

确实是偏执的观点。

对于那些不那么偏执的人,如果他们能够支持失去一切......有RaidZ级别......我更喜欢自己“镜像”。

手动“同步”的另一个优点是您自己的失败:

  • 您有一个假设的完美、永不失败的 ZFS 系统,但您决定删除一个文件……几天后,您发现您错过了想要删除的文件,并删除了一个您不想要的文件(由于人为错误)……除非您有备份,否则您就没那么幸运了

所以...再说一遍...如果您需要备份,为什么不仅通过条带化来最大限度地加快 ZFS 速度?...毕竟您仍然需要进行备份。

嗯,答案可能是:

  • a24h 在线系统的系统分区

对于数据分区,我认为没有必要使用 RaidZ 级别,相反,只要正在使用的主 ZFS 出现故障,就准备好连接外部 USB ZFS 克隆...只需卸载 ZFS 主点并安装其他好的 ZFS...然后用另一台机器重新创建损坏的离线 ZFS。

如果您有两台计算机,那么您就可以实现 7x24 小时全天候运行,而停机时间仅有几秒钟(启动时间)。

对于希望照片安全的家庭用户...使用两个以上的 ZFS,并且至少有一个或两个永远不会与其他 ZFS 同时连接。偏执?一点也不。

我只是通过痛苦的经历才知道事情可能会变得多么糟糕!

只是为了澄清...发生了什么...

  1. 我正常使用电脑
  2. 数据开始失败
  3. 我取出硬盘,然后把没问题的硬盘放进去
  4. 它们上面的数据也在不到十秒的时间内被破坏
  5. 我丢失了所有数据(但没有完全丢失,因为我有点偏执,而且在 DVD 介质上有备份)

问题实际上出在控制器(集成在主板上),而不是磁盘上......它改变了读/写操作的数据。

从那时起...我的数据不再位于内部 SATA 磁盘上...只能在外部 USB 3.1 Gen 2 外壳上,我可以插入和拔出(每个磁盘都在自己的外壳中)...并且当一个出现故障时...我在将该 PC 连接到任何有真实数据的东西之前会测试所有东西...RAM、处理器、USB 端口等...使用虚拟 USB 外壳来测试模式...如果没问题...那么我会测试出现故障的磁盘...它是否可以在另一个外壳上运行,是否可以在另一台 PC 上运行,等等...以真正知道是谁导致了故障...真的很偏执,我知道!

但从经验中可以得出:

  • 永远不要相信磁盘故障是由磁盘本身引起的...测试它...它可能是控制器,电缆,电源等。
  • 或者更糟糕的是,它可能是 RAM

说到 RAM,我有一台不太旧的 PC(基于 BIOS 的 64 位处理器),如果(考虑三个相同的 RAM 模块,分别称为 A、B 和 C):

  • 我把 A 放在 PC 上,运行正常(无论放在四个插槽中的哪一个上)
  • 我把 B 放在 PC 上,运行正常(无论放在四个插槽中的哪一个上)
  • 我把 C 放在 PC 上,运行正常(但只在四个插槽中的一个,在另一棵树上会导致很多故障、BSOD 等)
  • 我把 A 和 B 放进去,结果导致了很多失败、蓝屏等等
  • 我把 A 和 C 放在 PC 上,运行正常(无论放在四个插槽中的哪一个上)
  • 我把 B 和 C 放在 PC 上,运行正常(无论放在四个插槽中的哪一个上)
  • 我在 PC 上安装了 A、B 和 C,结果导致了很多故障、蓝屏死机等

如果我在另一台电脑上测试这些模块,它们都运行良好,没有问题,没有缺陷等等。

事情可能会变得非常疯狂...如果您不测试所有的组合,您就无法知道哪里出了问题...是的,测试四个插槽上的三个 RAM 模块的所有组合真的很偏执...但我的发现让我看不清...如果有另一个模块存在,单独发生故障的模块可以完美工作,但如果有另外两个则不行...是的,我还测试了另外三个,但失败了!

哦,是的,都是同一个品牌、同种类型等等……一模一样……唯一能区分它们的方法是我贴在它们身上的标签!是的,它们是同时购买的,装在同一个制造商锁定的塑料盒中。

有时 ZFS 故障可能是由 RAM 引起的……那么无论您有多少级别的 RaidZ……您都可能失去一切。

哦,差点忘了……使用 ECC 内存,否则 ZFS 不可信!不要使用任何带有内部缓存、内部 RAID 等的 HDD,除非它被设计为按照发送的顺序进行写入(或在断电时执行所有写入)。

我仅使用具有足够内部能量容量的 HDD,以便在突然断电后将其所有缓存写入盘中!

所有这些观点/弱点让我得出一个结论:

  • 最好加快速度并自行备份
  • 有一些 100% 的副本处于离线状态且没有电源
  • 准备好可以接电并更换故障部件的东西

这就是为什么我有 2 台以上配备 10 块 USB 硬盘(5 个 ZFS 副本 *3 个硬盘,每个都已剥离)的 PC... 我兼具了两者的优点... 安全和速度!但我遇到了最糟糕的部分... 需要定期同步所有硬盘... 但数据安全是最重要的部分!而且我不想等待很长时间才能进行此类同步(也就是说,剥离开始起作用)。

如果 3*HDD 条带发生故障...我可以花几个小时/几天/几周的时间来测试这三个条带中哪一个发生了故障...同时我有另一个在线并且可以工作的 ZFS 副本...确保其他两个都没有问题后,我会购买一个新的(可能要 30 到 45 天才能到达)并重新创建这样的 3*HDD ZFS,并将数据放在上面以再次获得第五个副本。

一点都不便宜!但当然不是主数据中心的价格……而且没有电费(大多数硬盘没有电,同时只有 3 个或 6 个)。

希望有人发现这个想法有用(我每天都在用它)。

相关内容