Учитывает ли ZFS размер автоматических запасных частей при использовании autoreplace=on?

Максимальная кодовая база ZFS для пула: zfs-linux (0.7.5-1ubuntu16.11)

Представьте себе пул, который неожиданно увеличился за счет добавления зеркал большего размера с точки зрения емкости физических дисков. Запчасти пошли на буксир. Новое зеркало, новая запаска. SAS Enterprise Grade на HBA. Зеркало 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делать ли проверки, чтобы убедиться, что запасные части присоединяются к зеркалам того же или меньшего размера? В таком случае, возможно ли, чтобы самый большой запасной элемент присоединился к самому маленькому зеркалу?

Я был бы рад взглянуть на код, если вы мне укажете. Более того, я хотел бы дать вам голос «за» и чек.

1 ответ

Автоматическая замена предназначена для замены дисков в одном и том же физическом месте и не имеет ничего общего с горячим/холодным резервированием.

Но похоже, что zfs пробует все запасные части по порядку, пока не найдет тот, который увенчается успехом. Я думаю, что это соответствующий исходный код: GitHub.

Другие вопросы по тегам