тестирование ZFS-как уничтожить UNAVAIL пул без перезагрузки

Я тестирую ZFSonLinux и у меня есть экспериментальный пул под названием usbcka.
Есть только данные тестирования.
Я имитирую неспособность HW сдерживать поведение в этом сценарии.
Я знаю, что эта настройка не имеет избыточности, которая принимается как риск (решение не принято мной).
EDIT: дополнительная информация: ОС будет на резервном хранилище

root@carbon:~# zpool status -xv
  pool: usbcka
 state: UNAVAIL
status: One or more devices are faulted in response to IO failures.
action: Make sure the affected devices are connected, then run 'zpool clear'.
   see: http://zfsonlinux.org/msg/ZFS-8000-HC
  scan: none requested
config:

    NAME        STATE     READ WRITE CKSUM
    usbcka      UNAVAIL      0     0     0  insufficient replicas
      usb1      ONLINE       0     0     0
      usb2      FAULTED      0     0     0  too many errors

errors: List of errors unavailable (insufficient privileges)

устройства usb1 и usb2 - это устройства LUKS, установленные с cryptsetup.

** в качестве теста, я специально физически удалено основное устройство для usb2 **
Предположим, неисправное устройство было HDD, который не подлежал ремонту, HW сбой.

пробовал

root@carbon:~# zpool destroy -f usbcka
cannot open 'usbcka': pool I/O is currently suspended

root@carbon:~# zpool set failmode=continue usbcka
cannot set property for 'usbcka': pool I/O is currently suspended

и

zpool clear usbcka

ничего не делает,пустой выход

и

zpool export usbcka

зависает

как уничтожить бассейн без перезагрузки?

Я хочу использовать все еще работающие устройства для создания нового пула

причина, по которой я не хочу перезагрузки это я тестирую, как в ZFS не если устройство неисправно, я намерен использовать ЗФС в работе на сервере компании. Этот сервер просто не может быть перезагружен по моей прихоти, если один из 10 дисков выходит из строя, и у него есть лотки горячей замены.

Я искал решения, но все они в конечном итоге с решением перезагрузки.

root@carbon:~# zfs list usbcka
cannot open 'usbcka': pool I/O is currently suspended

root@carbon:~# zpool get all usbcka
NAME    PROPERTY                    VALUE                       SOURCE
usbcka  size                        174G                        -
usbcka  capacity                    1%                          -
usbcka  altroot                     -                           default
usbcka  health                      UNAVAIL                     -
usbcka  guid                        1317589842010265379         default
usbcka  version                     -                           default
usbcka  bootfs                      -                           default
usbcka  delegation                  on                          default
usbcka  autoreplace                 off                         default
usbcka  cachefile                   -                           default
usbcka  failmode                    wait                        default
usbcka  listsnapshots               off                         default
usbcka  autoexpand                  off                         default
usbcka  dedupditto                  0                           default
usbcka  dedupratio                  1.00x                       -
usbcka  free                        170G                        -
usbcka  allocated                   3.26G                       -
usbcka  readonly                    off                         -
usbcka  ashift                      13                          local
usbcka  comment                     -                           default
usbcka  expandsize                  -                           -
usbcka  freeing                     0                           default
usbcka  fragmentation               1%                          -
usbcka  leaked                      0                           default
usbcka  feature@async_destroy       enabled                     local
usbcka  feature@empty_bpobj         enabled                     local
usbcka  feature@lz4_compress        active                      local
usbcka  feature@spacemap_histogram  active                      local
usbcka  feature@enabled_txg         active                      local
usbcka  feature@hole_birth          active                      local
usbcka  feature@extensible_dataset  enabled                     local
usbcka  feature@embedded_data       active                      local
usbcka  feature@bookmarks           enabled                     local
usbcka  feature@filesystem_limits   enabled                     local
usbcka  feature@large_blocks        enabled                     local
5
задан Sidias-Korrado
источник

1 ответов

у меня была та же проблема при тестировании debian с ядром 4.14 и модулем ZFS 0.7.6. Но я думаю, что это поведение одинаково на всех Linux-боксах.

уничтожить UNAVAILбассейн, где статус выглядит так:

user@system: ~ $ sudo zpool status -xv
pool: icy_tank
state: UNAVAIL
status: One or more devices are faulted in response to IO failures.
action: Make sure the affected devices are connected, then run 'zpool clear'.
see: http://zfsonlinux.org/msg/ZFS-8000-HC
scan: none requested
config:

    NAME        STATE     READ WRITE CKSUM
    icy_tank    UNAVAIL      0     0     0  insufficient replicas
      sdb       UNAVAIL      0     0     0

errors: List of errors unavailable: pool I/O is currently suspended

вы должны перезапустить zed, демон событий zfs сначала перезапустив весь systemd zfs-target.

sudo systemctl restart zfs.target

после этого шага пул может быть очищен.

sudo zpool clear icy_tank

если устройство (например, sdb) время и sdb является частью пула, zpool сразу же начинает скраб на устройстве.

pool: icy_tank
state: ONLINE
status: One or more devices has experienced an error resulting in data
    corruption.  Applications may be affected.
action: Restore the file in question if possible.  Otherwise restore the
    entire pool from backup.
see: http://zfsonlinux.org/msg/ZFS-8000-8A
scan: scrub in progress since Wed Mar  7 20:27:55 2018
    316M scanned out of 121G at 9,89M/s, 3h28m to go
    0B repaired, 0,26% done
config:

    NAME        STATE     READ WRITE CKSUM
    icy_tank    ONLINE       0     0     0
      sdb       ONLINE       0     0     0

errors: 4 data errors, use '-v' for a list
0
отвечен meetunix 2018-03-07 19:45:42
источник

Другие вопросы debian hard-drive linux zfs