Oracle® Solaris 11.2의 ZFS 파일 시스템 관리

인쇄 보기 종료

업데이트 날짜: 2014년 12월
 
 

누락되었거나 제거된 장치 해결

장치를 열 수 없는 경우 zpool status 출력에 UNAVAIL 상태가 표시됩니다. 이 상태는 풀에 처음 액세스할 때 ZFS에서 장치를 열 수 없거나 장치를 사용할 수 없게 되었음을 의미합니다. 장치로 인해 최상위 가상 장치를 사용할 수 없게 될 경우 풀에 있는 어떠한 장치에도 액세스할 수 없습니다. 그렇지 않은 경우 풀의 결함 허용이 손상될 수 있습니다. 어떤 경우든지 장치를 시스템에 다시 연결하여 일반 작업을 복원해야 합니다. 결함이 발생하여 UNAVAIL 상태인 장치를 교체해야 할 경우 ZFS 저장소 풀의 장치 교체를 참조하십시오.

장치가 루트 풀 또는 미러링된 루트 풀에서 UNAVAIL인 경우 다음 참조 자료를 참조하십시오.

예를 들어, 장치 오류 후 fmd에서 다음과 비슷한 메시지를 표시할 수 있습니다.

SUNW-MSG-ID: ZFS-8000-QJ, TYPE: Fault, VER: 1, SEVERITY: Minor
EVENT-TIME: Wed Jun 20 13:09:55 MDT 2012
PLATFORM: ORCL,SPARC-T3-4, CSN: 1120BDRCCD, HOSTNAME: tardis
SOURCE: zfs-diagnosis, REV: 1.0
EVENT-ID: e13312e0-be0a-439b-d7d3-cddaefe717b0
DESC: Outstanding dtls on ZFS device 'id1,sd@n5000c500335dc60f/a' in pool 'pond'.
AUTO-RESPONSE: No automated response will occur.
IMPACT: None at this time.
REC-ACTION: Use 'fmadm faulty' to provide a more detailed view of this event.
Run 'zpool status -lx' for more information. Please refer to the associated
reference document at http://support.oracle.com/msg/ZFS-8000-QJ for the latest
service procedures and policies regarding this diagnosis.

장치 문제 및 해결 방법에 대한 자세한 정보를 보려면 zpool status –v 명령을 사용하십시오. 예를 들면 다음과 같습니다.

# zpool status -v
pool: pond
state: DEGRADED
status: One or more devices are unavailable in response to persistent errors.
Sufficient replicas exist for the pool to continue functioning in a
degraded state.
action: Determine if the device needs to be replaced, and clear the errors
using 'zpool clear' or 'fmadm repaired', or replace the device
with 'zpool replace'.
scan: scrub repaired 0 in 0h0m with 0 errors on Wed Jun 20 13:16:09 2012
config:

NAME                   STATE     READ WRITE CKSUM
pond                   DEGRADED     0     0     0
mirror-0               ONLINE       0     0     0
c0t5000C500335F95E3d0  ONLINE       0     0     0
c0t5000C500335F907Fd0  ONLINE       0     0     0
mirror-1               DEGRADED     0     0     0
c0t5000C500335BD117d0  ONLINE       0     0     0
c0t5000C500335DC60Fd0  UNAVAIL      0     0     0

device details:

c0t5000C500335DC60Fd0    UNAVAIL          cannot open
status: ZFS detected errors on this device.
The device was missing.
see: http://support.oracle.com/msg/ZFS-8000-LR for recovery

이 출력 결과에서는 c0t5000C500335DC60Fd0 장치가 작동하지 않음을 확인할 수 있습니다. 이 장치에 오류가 있다고 판단되면 해당 장치를 교체하십시오.

필요한 경우 zpool online 명령을 사용하여 교체한 장치를 온라인 상태로 설정합니다. 예를 들면 다음과 같습니다.

# zpool online pond c0t5000C500335DC60Fd0

fmadm faulty 출력에서 장치 오류가 식별되는 경우 장치가 교체되었음을 FMA에 알립니다. 예를 들면 다음과 같습니다.

# fmadm faulty
--------------- ------------------------------------  -------------- ---------
TIME            EVENT-ID                              MSG-ID         SEVERITY
--------------- ------------------------------------  -------------- ---------
Jun 20 13:15:41 3745f745-371c-c2d3-d940-93acbb881bd8  ZFS-8000-LR    Major

Problem Status    : solved
Diag Engine       : zfs-diagnosis / 1.0
System
Manufacturer  : unknown
Name          : ORCL,SPARC-T3-4
Part_Number   : unknown
Serial_Number : 1120BDRCCD
Host_ID       : 84a02d28

----------------------------------------
Suspect 1 of 1 :
Fault class : fault.fs.zfs.open_failed
Certainty   : 100%
Affects     : zfs://pool=86124fa573cad84e/
  vdev=25d36cd46e0a7f49/pool_name=pond/
  vdev_name=id1,sd@n5000c500335dc60f/a
Status      : faulted and taken out of service

FRU
Name             : "zfs://pool=86124fa573cad84e/
vdev=25d36cd46e0a7f49/pool_name=pond/
vdev_name=id1,sd@n5000c500335dc60f/a"
Status        : faulty

Description : ZFS device 'id1,sd@n5000c500335dc60f/a' 
in pool 'pond' failed to open.

Response    : An attempt will be made to activate a hot spare if available.

Impact      : Fault tolerance of the pool may be compromised.

Action      : Use 'fmadm faulty' to provide a more detailed view of this event.
Run 'zpool status -lx' for more information. Please refer to the
associated reference document at
http://support.oracle.com/msg/ZFS-8000-LR for the latest service
procedures and policies regarding this diagnosis.

fmadm faulty 출력 결과에서 Affects: 절의 문자열을 추출하고 이를 다음 명령에 포함하여 FMA에 해당 장치가 교체되었음을 알립니다.

# fmadm repaired zfs://pool=86124fa573cad84e/ \
   vdev=25d36cd46e0a7f49/pool_name=pond/ \
   vdev_name=id1,sd@n5000c500335dc60f/a
fmadm: recorded repair to of zfs://pool=86124fa573cad84e/
   vdev=25d36cd46e0a7f49/pool_name=pond/vdev_
name=id1,sd@n5000c500335dc60f/a

끝으로, 교체된 장치를 포함하는 풀이 정상적으로 작동하는지 확인하십시오. 예를 들면 다음과 같습니다.

# zpool status -x tank
pool 'tank' is healthy

제거된 장치 해결

시스템에서 장치가 완전히 제거되면 ZFS는 해당 장치를 열 수 없음을 감지하고 장치를 REMOVED 상태로 설정합니다. 풀의 데이터 복제 레벨에 따라 이 제거로 인해 전체 풀이 사용하지 못하게 될 수도 있고 그렇지 않을 수도 있습니다. 미러링된 장치나 RAID-Z 장치의 한 디스크만 제거되면 풀에 계속 액세스할 수 있습니다. 다음과 같은 조건에서는 풀이 UNAVAIL 상태가 될 수 있습니다. 이 경우 장치가 다시 연결될 때까지 데이터에 액세스할 수 없습니다.

중복 저장소 풀 장치를 실수로 제거했다가 다시 삽입할 경우 대개 장치 오류를 해결할 수 있습니다. 예를 들면 다음과 같습니다.

# zpool clear tank c1t1d0

물리적으로 장치 재연결

누락된 장치가 다시 연결되는 방식에 따라 문제가 발생하는 장치가 달라집니다. 장치가 네트워크 연결 드라이브일 경우 네트워크 연결을 복원해야 합니다. 장치가 USB 장치이거나 기타 이동식 매체일 경우 시스템에 다시 연결해야 합니다. 장치가 로컬 디스크일 경우 컨트롤러에서 오류가 발생하여 장치가 더 이상 시스템에 표시되지 않을 수 있습니다. 이 경우 컨트롤러를 교체해야 합니다. 그러면 디스크를 다시 사용할 수 있게 됩니다. 다른 문제가 존재할 수 있으며 이러한 문제는 하드웨어 및 하드웨어 구성의 유형에 따라 달라집니다. 드라이버에서 오류가 발생하여 시스템에 더 이상 표시되지 않을 경우 장치를 손상된 장치로 간주해야 합니다. 손상된 장치 교체 또는 복구에 설명된 절차를 수행하십시오.

장치 연결이 손상된 경우 풀이 SUSPENDED 상태일 수 있습니다. 풀은 장치 문제가 해결될 때까지 SUSPENDED 상태를 유지합니다. 예를 들면 다음과 같습니다.

# zpool status cybermen
pool: cybermen
state: SUSPENDED
status: One or more devices are unavailable in response to IO failures.
The pool is suspended.
action: Make sure the affected devices are connected, then run 'zpool clear' or
'fmadm repaired'.
Run 'zpool status -v' to see device specific details.
see: http://support.oracle.com/msg/ZFS-8000-HC
scan: none requested
config:

NAME       STATE     READ WRITE CKSUM
cybermen   UNAVAIL      0    16     0
c8t3d0     UNAVAIL      0     0     0
c8t1d0     UNAVAIL      0     0     0

장치 연결이 복원된 후 풀 또는 장치 오류를 지우십시오.

# zpool clear cybermen
# fmadm repaired zfs://pool=name/vdev=guid

ZFS에 장치 가용성 알림

장치를 시스템에 다시 연결하면 ZFS에서 자동으로 해당 장치가 사용 가능한지를 감지할 수도 있고 그렇지 않을 수도 있습니다. 풀이 이전에 UNAVAIL 또는 SUSPENDED 상태였거나 시스템이 attach 프로시저의 일부로 재부트된 경우에는 ZFS에서 풀을 열려고 할 때 자동으로 모든 장치를 다시 스캔합니다. 풀이 디그레이드되어 시스템 실행 중에 장치를 교체한 경우 zpool online 명령을 사용하여 이제 장치를 사용할 수 있으며 다시 열 준비가 되었음을 ZFS에 알려야 합니다. 예를 들면 다음과 같습니다.

# zpool online tank c0t1d0

장치를 온라인으로 설정하는 방법은 온라인으로 장치 설정을 참조하십시오.