Подозрительный Zpool Resilver

ZFS на Linux, Ubuntu 16.04LTS. Пул ZFS, raidz1 vdev с дисками 5x4TB.

Вчера я заметил один диск полностью отслаивается. (Звуковой шум от головок, пытающихся сбросить, откалибровать). Это был тост. Так что я в автономном режиме.

mrenouf@archive:~$ sudo zpool status
  pool: tank
 state: DEGRADED
status: One or more devices has been taken offline by the administrator.
    Sufficient replicas exist for the pool to continue functioning in a
    degraded state.
action: Online the device using 'zpool online' or replace the device with
    'zpool replace'.
  scan: resilvered 2.42G in 0h3m with 0 errors on Thu Apr 20 08:04:09 2017
config:

    NAME                                       STATE     READ WRITE CKSUM
    tank                                       DEGRADED     0     0     0
      raidz1-0                                 DEGRADED     0     0     0
        ata-ST4000DM005-2DP166_ZDH0ZH6V-part2  ONLINE       0     0     0
        ata-ST4000DM005-2DP166_ZDH0Z9EG-part2  ONLINE       0     0     0
        ata-ST4000DM005-2DP166_ZDH0ZJZS-part2  ONLINE       0     0     0
        ata-ST4000DM005-2DP166_ZDH0ZDDJ-part2  ONLINE       0     0     0
        ata-ST4000DM005-2DP166_ZDH0ZJDQ-part2  OFFLINE      0     0     0

errors: No known data errors

Sidenote: Почему -part2? FreeNAS сделал это (где этот пул был первоначально создан). Каждый диск имеет раздел подкачки объемом 2 ГБ перед данными, и я решил, что лучше всего скопировать его на сменный диск для симметрии.

Так или иначе, я вставляю замену и запускаю ресивер.

zpool replace tank ata-ST4000DM005-2DP166_ZDH0ZJDQ-part2 /dev/disk/by-id/ata-ST4000DM005-2DP166_ZDH15ZE0-part2

Он "заканчивается" в рекордно короткие сроки... (после показа оценки в диапазоне 20 часов). У меня нет истории с промежуточных шагов, но поверьте мне... В этом пуле выделено ~4 ТБ.

pool: tank
state: ONLINE
scan: resilvered 2.42G in 0h3m with 0 errors on Thu Apr 20 08:04:09 2017
  config:

    NAME                                       STATE     READ WRITE CKSUM
    tank                                       ONLINE       0     0     0
      raidz1-0                                 ONLINE       0     0     0
        ata-ST4000DM005-2DP166_ZDH0ZH6V-part2  ONLINE       0     0     0
        ata-ST4000DM005-2DP166_ZDH0Z9EG-part2  ONLINE       0     0     0
        ata-ST4000DM005-2DP166_ZDH0ZJZS-part2  ONLINE       0     0     0
        ata-ST4000DM005-2DP166_ZDH0ZDDJ-part2  ONLINE       0     0     0
        ata-ST4000DM005-2DP166_ZDH15ZE0-part2  ONLINE       0     0     0

errors: No known data errors

Я тебе не верю!

Что может вызвать это? Что мне теперь делать? Я еще не выяснил, как заменить диск на себя (и заставить другой ресивер).

РЕДАКТИРОВАТЬ:

Я запускаю скраб для этого нового "resilvered":

  pool: tank
 state: ONLINE
status: One or more devices has experienced an unrecoverable error.  An
        attempt was made to correct the error.  Applications are unaffected.
action: Determine if the device needs to be replaced, and clear the errors
        using 'zpool clear' or replace the device with 'zpool replace'.
   see: http://zfsonlinux.org/msg/ZFS-8000-9P
  scan: scrub in progress since Thu Apr 20 08:39:31 2017
    12.1G scanned out of 4.29T at 87.7M/s, 14h13m to go
    159M repaired, 0.27% done
config:

        NAME                                       STATE     READ WRITE CKSUM
        tank                                       ONLINE       0     0     0
          raidz1-0                                 ONLINE       0     0     0
            ata-ST4000DM005-2DP166_ZDH0ZH6V-part2  ONLINE       0     0     0
            ata-ST4000DM005-2DP166_ZDH0Z9EG-part2  ONLINE       0     0     0
            ata-ST4000DM005-2DP166_ZDH0ZJZS-part2  ONLINE       0     0     0
            ata-ST4000DM005-2DP166_ZDH0ZDDJ-part2  ONLINE       0     0     0
            ata-ST4000DM005-2DP166_ZDH15ZE0-part2  ONLINE       0     0 20.2K  (repairing)

errors: No known data errors

Кажется, он остановился на отметке ~12G:

12.4G scanned out of 4.29T at 64.2M/s, 19h25m to go

Тогда это просто останавливается:

  pool: tank
 state: ONLINE
status: One or more devices has experienced an unrecoverable error.  An
        attempt was made to correct the error.  Applications are unaffected.
action: Determine if the device needs to be replaced, and clear the errors
        using 'zpool clear' or replace the device with 'zpool replace'.
   see: http://zfsonlinux.org/msg/ZFS-8000-9P
  scan: scrub repaired 164M in 0h3m with 0 errors on Thu Apr 20 08:42:50 2017
config:

        NAME                                       STATE     READ WRITE CKSUM
        tank                                       ONLINE       0     0     0
          raidz1-0                                 ONLINE       0     0     0
            ata-ST4000DM005-2DP166_ZDH0ZH6V-part2  ONLINE       0     0     0
            ata-ST4000DM005-2DP166_ZDH0Z9EG-part2  ONLINE       0     0     0
            ata-ST4000DM005-2DP166_ZDH0ZJZS-part2  ONLINE       0     0     0
            ata-ST4000DM005-2DP166_ZDH0ZDDJ-part2  ONLINE       0     0     0
            ata-ST4000DM005-2DP166_ZDH15ZE0-part2  ONLINE       0     0 21.5K

errors: No known data errors

ЧТО? Он даже не сканировал весь бассейн. Как это можно сделать? Не было никаких аппаратных ошибок, так что, черт возьми, происходит? Argh.

1 ответ

Решение

Вам нужно обновить систему до ZFS в Linux 0.7.0 (моя проблема была исправлена ​​в версии 3, доступной здесь). Следуйте инструкциям по компиляции. После установки убедитесь, что все работает, проверив версии zfs и spl.

modinfo zfs | grep -iw version
modinfo spl | grep -iw version

У меня была точно такая же проблема, и это то, что работало для меня.

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