使用“autoreplace=on”时,ZFS 自动备件是否可以感知大小?

使用“autoreplace=on”时,ZFS 自动备件是否可以感知大小?

池的最大 ZFS 代码库:zfs-linux(0.7.5-1ubuntu16.11)

想象一下,一个池意外地增长,通过添加更大的镜像(就物理磁盘容量而言)。备件也随之增加。新镜像,新备件。HBA 上的 SAS 企业级。镜像 0 小于 1,而 1 小于 2。每个镜像都有一个大小合适的备件。

  pool: glue
 state: ONLINE
  scan: scrub repaired 0B in 27h55m with 0 errors on Mon Jul 12 04:19:14 2021
config:

    NAME                        STATE     READ WRITE CKSUM
    glue                        ONLINE       0     0     0
      mirror-0                  ONLINE       0     0     0
        wwn-0x5000cca2a501f240  ONLINE       0     0     0
        wwn-0x5000cca2975af090  ONLINE       0     0     0
      mirror-1                  ONLINE       0     0     0
        wwn-0x5000cca271340e4c  ONLINE       0     0     0
        wwn-0x5000cca27134c71c  ONLINE       0     0     0
      mirror-2                  ONLINE       0     0     0
        wwn-0x5000cca2972cce94  ONLINE       0     0     0
        wwn-0x5000cca298192df4  ONLINE       0     0     0
    spares
      wwn-0x5000cca2558480fc    AVAIL   
      wwn-0x5000cca2972be67c    AVAIL   
      wwn-0x5000c50083bbae43    AVAIL   

errors: No known data errors

情况可能就是这样。如果使用自动备用磁盘autoreplace,而一个小备用磁盘尝试镜像比它大的磁盘,池会中断吗,或者是否存在我们可以扫描的错误?

或者会autoreplace进行检查以确保备用服务器加入大小相同或更小的镜像?在这种情况下,最大的备用服务器是否可以加入最小的镜像?

如果你能指点我,我很乐意看看代码。更重要的是,我很乐意给你点赞和检查。

答案1

自动替换用于在同一物理位置替换驱动器,与热/冷备用无关。

但看起来 zfs 会按顺序尝试所有备用磁盘,直到找到一个成功的备用磁盘。我认为这是相关的源代码:GitHub

相关内容