如果我从一个2驱动器剥离ZFS POOL开始,它会自动成为RAID-5容错池,当我添加第三个驱动器?
我似乎无法find任何我在网上find的有关添加第三个驱动器到条带集并更改为RAIDZ1的ZFS CheatSheets。
有没有人有这种情况下的实际经验?
不,它不会自动执行任何操作。 您不能dynamic地在RAID保护types之间进行转换。
RAIDZ1与ZFS中的条带化开发者不同。 我希望在types之间切换,您可能需要重build或备份/恢复到您所需的结构。
一些背景信息:
在ZFS中,您可以使用vdevs(虚拟设备)构build存储池。 一个池可以拥有任意数量的vdev,每个vdev本身可以包含一个或多个磁盘。 冗余在vdev级别进行pipe理,因此您的池将始终在所有由其组成的vdevs上进行分条(连接)。 这意味着如果你失去了一个单独的vdev,你将失去你的池。
为防止出现这种情况,通常不使用单个磁盘作为vdevs,而是使用冗余集:镜像磁盘(2,3或更多个完全镜像/相同的磁盘)或基于奇偶校验的磁盘集(具有一个奇偶校验磁盘的RAIDZ1等于RAID5,2个奇偶校验磁盘等于RAID6的RAIDZ2,或3个奇偶校验磁盘的RAIDZ3)。
一些规则适用:
zpool attach和zpool detach来将磁盘添加到镜像vdevs和基本单个磁盘(当然除了最后一个磁盘除外)。 ZFS与奇偶校验RAID并不那么灵活,因此您应该考虑您的数据和增长并相应计划:
有关RAIDtypes和一般池布局之间的select的更深入的信息,我build议阅读这篇博文以及ZFS最佳实践指南 。