ZFS. Замена вышедшего из строя диска в RAID

Материал из Wiki
Перейти к навигации Перейти к поиску


Задача

Например, диск raidd4 пропал или вышел из строя

zfs status

       NAME                     STATE     READ WRITE CKSUM
       media                    DEGRADED     0     0     0
         raidz1-0               DEGRADED     0     0     0
           gpt/raidd1           ONLINE       0     0     0
           gpt/raidd2           ONLINE       0     0     0
           gpt/raidd3           ONLINE       0     0     0
           8216658846576933595  UNAVAIL      0     0     0  was /dev/gpt/raidd4
           gpt/raidd5           ONLINE       0     0     0

Проверка

Возможно, с диском всё в порядке

Сначала пробуем сделать его offline и online

zpool offline media 8216658846576933595

zpool online media /dev/gpt/raidd4

Замена

Если не помогло делаем диск offline

zpool offline media 8216658846576933595

Заменяем физически вышедший из строя на новый диск

Форматируем новый диск со старым именем /dev/gpt/raidd4

Меняем 8216658846576933595 на /dev/gpt/raidd4

zpool replace media 8216658846576933595 /dev/gpt/raidd4

Или, если тот же диск (без форматирования)

zpool online media /dev/gpt/raidd4

Смотрим что пошел процесс resilvering

zfs status

       NAME                        STATE     READ WRITE CKSUM
       media                       DEGRADED     0     0     0
         raidz1-0                  DEGRADED     0     0     0
           gpt/raidd1              ONLINE       0     0     0
           gpt/raidd2              ONLINE       0     0     0
           gpt/raidd3              ONLINE       0     0     0
           replacing-3             UNAVAIL      0     0     0
             8216658846576933595   UNAVAIL      0     0     0  was /dev/gpt/raidd4/old
             14104644866017721544  OFFLINE      0     0     0  was /dev/gpt/raidd4  (resilvering)
           gpt/raidd5              ONLINE       0     0     0            

Дожидаемся окончания resilvering

Дополнительно

zpool status

  pool: raid1
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 380K in 0h0m with 0 errors on Thu Aug 27 14:16:27 2020
config:
       NAME                     STATE     READ WRITE CKSUM
       raid1                    DEGRADED     0     0     0
         raidz1-0               DEGRADED     0     0     0
           gpt/d1               ONLINE       0     0     0
           1414041903989255808  OFFLINE      0     0     0  was /dev/gpt/d2
errors: No known data errors

zpool online raid1 /dev/gpt/d2

zpool offline raid2 17326078352596448618

zpool online raid2 /dev/gpt/d4