ZFS 드라이브가 풀과 핫 스페어 모두에 있습니까?

ZFS 드라이브가 풀과 핫 스페어 모두에 있습니까?

내 서버에서 RAIDZ2 설정을 실행하고 있습니다. /NAS로 마운트되며 부팅 프로세스에 참여하지 않습니다. 우분투 서버 18.10을 실행 중입니다. 동시에 두 대의 드라이브가 나에게 왔습니다. 드라이브 중 하나를 교체하고 다시 동기화했지만 결함이 있는 드라이브를 분리해도 풀의 "예비"에서 예비가 제거되지 않습니다. 실패한 다른 드라이브를 제거하기 위해 동일한 프로세스를 수행했을 때 예비 드라이브가 제거되어 풀에 추가되었는데, 이것이 바로 제가 원했던 것입니다.

이것은 다른 대체 기능입니까, 아니면 버그입니까? 누군가 풀에 활성 예비 드라이브가 있는 경우 온라인에서 인스턴스를 찾을 수 없지만 교체한 실패한 드라이브가 제거되는 동안 예비 드라이브에 여전히 "사용 중"으로 표시됩니다. 별 문제는 없는 것 같은데, 그냥 버그인 줄 알았는데? 이것이 내가 실수로 구현한 의도된 기능인지 판단하는 데 아무도 도움을 줄 수 없는 경우 버그 보고서를 제출하겠습니다.

me@myserver:~$ sudo zpool status NAS
  pool: NAS
 state: ONLINE
status: One or more devices is currently being resilvered.  The pool will
        continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
  scan: resilver in progress since Sun Sep  1 05:28:25 2019
        59.3G scanned out of 2.42T at 46.8M/s, 14h42m to go
        9.88G resilvered, 2.39% done
config:

        NAME                              STATE     READ WRITE CKSUM
        NAS                               ONLINE       0     0     0
          raidz2-0                        ONLINE       0     0     0
            ata-HUA722020ALA330_B9JGR5TF  ONLINE       0     0     0
            ata-HUA722020ALA330_B9JA0NHF  ONLINE       0     0     0
            ata-HUA722020ALA330_B8J92GBZ  ONLINE       0     0     0
            wwn-0x50014ee2bb3b8bb0        ONLINE       0     0     0  (resilvering)
            ata-HUA722020ALA330_YAHWBY3T  ONLINE       0     0     0
            wwn-0x50014ee265d7405a        ONLINE       0     0     0
        spares
          wwn-0x50014ee265d7405a          INUSE     currently in use

errors: No known data errors

제가 교체할 때 따랐던 지침은 다음과 같습니다. 이러한 각 교체 부품은 자체 SATA 슬롯에 있는 예비 부품입니다. 물리적인 교체는 이루어지지 않았습니다. 이는 외부 기계이기 때문에 이러한 목적으로 케이스에 배치됩니다.

취해야 할 단계:

zpool replace NAS <bad_drive> <spare_drive>
(New drive is resilvering)
zpool offline NAS <bad_drive>
zpool detach NAS <bad_drive>

이것이 버그인지는 잘 모르겠지만 대기 목록과 활성 풀에서 드라이브를 제거할 수 있었습니다. 이것을하기 위해:

zpool add NAS spare <additional_drive>
zpool replace NAS <spare_drive> <additional_drive>
zpool detach NAS <spare_drive>
zpool remove NAS <spare_drive>

이제 풀에 "spare_drive"를 다시 추가할 수 있지만 여기서는 예시를 위해 해당 단계를 생략하겠습니다.

me@myserver:/$ sudo zpool status NAS
  pool: NAS
 state: ONLINE
status: One or more devices is currently being resilvered.  The pool will
        continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
  scan: resilver in progress since Mon Sep  2 02:50:45 2019
        204G scanned out of 2.42T at 39.1M/s, 16h34m to go
        33.9G resilvered, 8.22% done
config:

        NAME                              STATE     READ WRITE CKSUM
        NAS                               ONLINE       0     0     0
          raidz2-0                        ONLINE       0     0     0
            ata-HUA722020ALA330_B9JGR5TF  ONLINE       0     0     0
            ata-HUA722020ALA330_B9JA0NHF  ONLINE       0     0     0
            ata-HUA722020ALA330_B8J92GBZ  ONLINE       0     0     0
            wwn-0x50014ee2bb3b8bb0        ONLINE       0     0     0
            ata-HUA722020ALA330_YAHWBY3T  ONLINE       0     0     0
            sdh                           ONLINE       0     0     0  (resilvering)

errors: No known data errors

그러나 풀에서 교체 드라이브를 sdh로 식별했음을 알 수 있습니다. 컴퓨터를 다시 시작하기 전에 /dev/disk/by-id로 변경할 예정입니다. sd(x)는 부팅 순서에 따라 결정되고 디스크가 추가, 제거되거나 재부팅 사이에 실패할 때 변경될 수 있기 때문에 이는 중요합니다. 이 문제를 해결하려면 다음을 사용합니다.

sudo zpool export [pool name]
sudo zpool import -d /dev/disk/by-id [pool name]

이 주제에 대한 자세한 내용은 다음 링크를 참조하세요. https://askubuntu.com/questions/967091/zpool-degrades-when-plugging-in-a-drive

고마워요, 서두르세요

관련 정보