用两张光盘启动ZFS RAIDZ zpool,然后添加第三张光盘?


13

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

我问的原因是我已经在使用一个2TB的驱动器,里面装满了文件。我想过渡到zpool,但如果可以的话,我只希望再购买两个2TB驱动器。据我了解,RAIDZ的行为类似于RAID5(我知道有一些主要区别,但在容量方面)。但是,RAID5需要3个以上的驱动器。我想知道RAIDZ是否具有相同的要求。

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

Answers:


13

某些人使用的方法,但不建议这样做:

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

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

不建议使用此方法,因为在复制和第三个驱动器不存在时,没有冗余/奇偶校验。但是可以。


1
感谢您的回答。我们并不总是在寻找推荐的解决方案。有时我们正在寻找任何解决方案。链接到如何做您所解释的会很好
jsaddwater

不幸的是,我无法在250GB驱动器上创建1TB稀疏文件,因此,当创建具有2个1TB驱动器+一个稀疏文件(10GB)的RAIDZ阵列时,该阵列将变为3x10GB。删除稀疏文件后,我无法扩展阵列,因为无法将数据从第三个驱动器复制到3x10GB的小型阵列中,并且该阵列无法以降级状态生长。抓住22.
jsaddwater

6

不幸的是,目前尚无法

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

RAID-Z1可能仅适用于2个驱动器,但是很明显,如果以后无法添加额外的驱动器,这将不是很有用。就可用存储空间而言,RAID-Z(类似于RAID 5)变得更加高效,所使用的驱动器越多。


4
这是三年后的今天,维基百科页面上仍然显示 “由于即将添加” ... :(
Icydog 2014年

2
@Icydog Real Real Now now ;-)
jlliagre

现在呢?:)
black_puppydog

3

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

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


3

没有足够的“信誉”来发表评论,因此请将其作为单独的答案

RE:Holger G建议

虽然我同意这并不安全...但是我发现此线程正在寻找一种方法,以便在以后可以购买额外的驱动器时从RAIDZ1转到RAIDZ2。

所以Holgers的建议对我来说非常有用-创建一个具有稀疏文件的开发人员的RAIDZ2,使文件设备脱机并有效使用RAIDZ1一段时间,然后在某个时候添加真实设备以使冗余度增加一倍

也适用于以下情况:一个驱动器像OP一样保留要复制到新RAID的数据。


RAIDZ2很愚蠢-唯一可能使配置有用的情况是两个驱动器相关的故障。与其使用两个磁盘来防止这种情况发生,不如使用不同制造商和/或不同型号的相同容量的磁盘来防止此类故障。
Mikhail T.

@MikhailT。-虽然使用不同的制造商是一个好建议,但说RaidZ2很傻是一个糟糕的建议;重建很可能会杀死另一个驱动器。
antiduh

仅当所有驱动器都与已经发生故障的驱动器相同并且因此可能遭受相关的故障时,重建极有可能杀死另一驱动器。在这种情况下,拥有两个驱动器也无济于事-它们很可能一次失效。如果预期的驱动器故障是独立的,那么牺牲多个磁盘的冗余性并不会带来可靠性的明显提高
Mikhail T.

0

只是说明一下:

  • 如果一个磁盘可能在不知道何时会发生故障的情况下发生故障,为什么两个磁盘无法同时发生故障?还是三个或四个或五个,等等?

但是,请考虑其他情况:

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

你失去了所有!这是允许同时出现两个磁盘故障的主要原因。

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

我生气了吗?不,当然...我不介意一个磁盘发生故障并丢失所有数据!我真的不会因为我非常偏执而放弃任何东西。

我的偏执方案:

  • 具有剥离功能的ZFS(2x,3x,4x ...或10x磁盘),正好适合总线的最大带宽(SATA III,USB 3.1 Gen 2等)
  • 和其他五个类似的ZFS(没有电源,因此无法损坏)

如何使用所有此类ZFS:

  • 一次只能有两个(只是为了同步更改)...就像一个有五个奴隶的主人

偏执的观点:

  • 如果一个ZFS发生故障...像被暴风雨袭击,烧毁,被盗等...我在不同的地方(银行,掩体,互联网云,朋友屋,度假屋等)还有五份副本

要同步其中的一些...我必须随身带一个ZFS,并在另一个物理位置/国家/地区等上进行同步...所以我使用一个ose子奴隶。

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

真是偏执的观点。

对于那些不是那么偏执的人,如果他们能够支持放松所有工作……就有RaidZ等级了……我更愿意凭自己来“镜像”。

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

  • 您有一个完美的假设性ZFS系统永远不会失败,但是您决定删除一个文件……几天后,您发现错过了要删除的文件并删除了您不想删除的文件(由于人为错误)。除非您有备份,否则您将不走运

所以...再次...如果您需要备份,为什么不仅通过条带化来最大程度地加速ZFS?...您毕竟还是需要进行备份。

好吧,答案可以是:

  • 24小时在线系统的系统分区

对于数据分区,我不认为需要RaidZ级别,而是在使用中的主要ZFS出现故障后立即准备好连接外部USB ZFS克隆...只需卸下ZFS主要点并就位安装其他良好的ZFS ...然后用另一台计算机重新创建损坏的离线ZFS。

如果您有两台计算机,则仅需要几秒钟(启动时间)的停机时间就可以达到7x24h的运行速度。

对于希望自己的照片保持安全的家庭用户,请使用两个以上的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上可以完美工作(但只能在四个插槽之一上,而在另一棵树上则导致很多失败,蓝屏死机等)
  • 我把A和B放了很多,导致蓝屏死机,蓝屏死机等
  • 我将A和C放在PC上工作完美(无论四个插槽中的哪个插槽)
  • 我将B&C放在PC上工作完美(无论在四个插槽中的哪个插槽上)
  • 我将A&B&C放在PC上会导致很多故障,蓝屏死机等

如果我在另一台PC上测试这样的模块,它们都可以很好地工作,没有问题,没有缺陷等。

事情可能真的发疯了...如果您不测试所有组合,您将不知道失败的原因...是的,对于在四个插槽上测试三个ram模块的所有组合真的很偏执...但是我发现的让我盲目...如果存在另一个模块,则单独失败的模块可以完美运行,但如果存在另外两个模块,则无法正常运行...是的,我也对另外三个模块进行了测试,但失败了!

哦,是的,所有相同的品牌,种类等...完全相同...唯一的区别是,我为此贴了一个标签!是的,他们是在同一时间购买的,它们都使用同一制造商生产的带锁塑料盒。

有时ZFS的失败可能是由R​​AM引起的……那么,无论您拥有多少级别的RaidZ,您都可以松开全部。

哦,差点忘了...使用ECC内存,否则ZFS不能被信任!请勿将任何具有内部高速缓存,内部RAID等的HDD一起使用,除非该HDD旨在按发送的顺序进行写操作(或以断电的方式进行所有操作)。

在突然断电之后,我仅使用具有足够内部能量的HDD来将其所有高速缓存写入板!

所有这些要点/弱点让我感叹不已:

  • 最好加快速度并自己备份
  • 离线约100%复制并且没有电源
  • 准备好接收电源并更换故障部件的准备

这就是为什么我拥有> 2台PC以及超过10个USB HDD(5个ZFS副本* 3个HDD分别剥离)的原因……我同时兼顾了……安全性和速度!但是我遇到了最糟糕的部分……需要定期同步所有它们……但是数据安全是最重要的部分!我也不想等很多这样的同步(又名,剥离工作)。

如果3 * HDD条带失败...我可以测试几个小时/天/周内哪个失败了...而我有另一个ZFS copie在线并正在工作...确保另一个两个都可以。我买了一个新的(可能需要30到45天),然后重新创建3 * HDD ZFS,并在上面放数据以再次获得该第五个副本。

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

希望有人觉得这个想法有用(我每天都使用它)。

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.