zfs 에러 pool I/O is currently suspended

겪은 일:

zfs draid 핫스패어 도중에 끊어짐

zpool 명령어를 여러가지 시도해보았지만 에러로 진행할 수 없었음

& zpool scrub fs1

cannot scrub fs1: pool I/O is currently suspended

발생한 원인은?

zpool status 명령어로 에러 메시지를 살펴보기로 하였다.

& zpool status -v

  pool: fs1
 state: SUSPENDED
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: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-HC
  scan: scrub repaired 0B in 00:02:05 with 0 errors on Tue Nov 19 16:02:58 2024
  scan: resilvered (draid1:5d:20c:2s-0) 1.45G in 00:00:44 with 0 errors on Tue Nov 19 16:00:53 2024
config:

        NAME                  STATE     READ WRITE CKSUM
        fs1                   UNAVAIL      0     0     0  insufficient replicas
          draid1:5d:20c:2s-0  ONLINE       0     0     0
            sdb               ONLINE       0     0     0
            sdc               ONLINE       0     0     0
            sdd               ONLINE       0     0     0
            sde               ONLINE       0     0     0
            sdf               ONLINE       0     0     0
            sdg               ONLINE       0     0     0
            sdh               ONLINE       0     0     0
            sdi               ONLINE       0     0     0
            sdj               ONLINE       0     0     0
            sdk               ONLINE       0     0     0
            sdl               ONLINE       0     0     0
            sdm               ONLINE       0     0     0
            sdn               ONLINE       0     0     0
            sdo               ONLINE       0     0     0
            sdp               ONLINE       0     0     0
            sdq               ONLINE       0     0     0
            sdr               ONLINE       0     0     0
            sds               ONLINE       0     0     0
            draid1-0-0        ONLINE       0     0     0
            sdu               ONLINE       0     0     0
          sdt                 UNAVAIL      0     0     0
        spares
          draid1-0-0          INUSE     currently in use
          draid1-0-1          AVAIL

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

하단의 자세한 오류 메시지를 확인
errors: List of errors unavailable: pool I/O is currently suspended

복구 시도 실패/성공

List가 이용불가라는데, 디가우징 할 때 자기장이 랙 디스크를 긁으셨는지, Config List 가 이상했다. 디스크 장애 시 핫스페어 draid1-0-0는 spares 와 함께 묶여야하는데. 혼자 있고, 고장난 vdt 볼륨은 draid으로부터 탈출했다.
일단 action 에 적힌 zpool clear 를 입력해보도록 한다.

& zpool clear fs1 

오한이 들 정도로 반응이 없었고 디스크가 죽어가고 있고, 볼륨 해제 에도 실패했다.
딸각 소리가 방 안을 가득 메움.

작업중이던 디렉토리 모두 취소하고 재부팅 한 다음 드라이브를 다시 교체했다. zpool clear 명령어로 어렵사리 복구에 성공하였다.

교체한 드라이브의 S.M.A.R.T 상태는 생각보다 멀쩡했다. 하드웨어 고장과 무관한 zfs 오류같다.