Recent Posts
Recent Comments
Link
«   2026/04   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
Tags more
Archives
Today
Total
관리 메뉴

일상과 여행 사이, 작은 발견들을 기록합니다

[Solaris] Zpool Replace Guide 본문

Oracle_Unix_Server

[Solaris] Zpool Replace Guide

kerasi 2025. 12. 21. 10:29
반응형
ZFS 엔지니어 노트: zpool replace 완벽 가이드
Solaris Tech Note Last Updated: 2025.12.21

ZFS 디스크 교체의 정석: zpool replace

20년 차 엔지니어가 전하는 무중단 디스크 교체 가이드와 실습 시뮬레이터

엔지니어 생활을 하다 보면 새벽 3시에 삐삐(요즘은 스마트폰 알림이겠지만)가 울리는 경험을 하게 됩니다. 대부분 하드웨어 장애, 그중에서도 디스크 장애(Disk Failure)가 범인인 경우가 많습니다.

오늘은 DEGRADED 상태의 풀을 안전하게 복구하는 절차를 다룹니다. 특히 물리 디스크를 제거하기 전 확인 절차를 소홀히 하면 멀쩡한 디스크를 뽑는 대형 사고가 터질 수 있습니다.

핵심 개념: Resilvering (리실버링)

💡 Resilvering이란?

기존 RAID의 'Rebuild'와 유사하지만 훨씬 똑똑합니다. 전체 디스크를 블록 단위로 무식하게 복사하는 것이 아니라, 실제 데이터가 있는 메타데이터와 블록만 추적하여 복구합니다.

작업 절차 (Workflow)

  1. 장애 확인: zpool status -x로 문제 있는 풀과 디스크를 확인합니다.
  2. 물리 디스크 식별 (중요!):

    논리적인 이름(c1t2d0)만 보고 디스크를 뽑으면 안 됩니다. 반드시 시리얼 넘버를 대조하세요.

    # iostat -En # diskinfo
  3. OS 레벨 제거 (Unconfigure):

    Hot-swap을 지원하더라도 OS에서 장치를 제거해 주는 것이 안전합니다.

    # cfgadm -al
    # cfgadm -c unconfigure c1::dsk/c1t2d0
  4. 물리적 교체: 디스크를 교체하고 cfgadm -c configure로 새 디스크를 인식시킵니다.
  5. ZFS 교체 명령: zpool replace [pool명] [옛_디스크] [새_디스크] 수행

Interactive ZFS Lab

아래 터미널은 실제 ZFS 환경을 시뮬레이션합니다. 현재 disk2 (c1t2d0)가 고장 난 상태입니다. 안전하게 제거하고 교체해 보세요.

📝 실습 시나리오:
  1. diskinfo : 전체 디스크 목록 및 상태 확인
  2. zpool status : 풀 상태 확인
  3. cfgadm -c unconfigure c1::dsk/c1t2d0 : OS 제거
  4. zpool replace tank c1t2d0 c1t3d0 : 새 디스크 교체 (c1t3d0)
root@solaris-server:~ (bash)
Solaris 11.4 Generic_123456-01 sun4v sparc
Copyright (c) 1983, 2025, Oracle and/or its affiliates.
Welcome to the ZFS Simulation Lab.
ALERT: One or more devices has experienced an unrecoverable error.

root@solaris-server:~#

💡 전문가의 팁 (Pro Tips)

  • Autoexpand: 더 큰 용량의 디스크로 교체할 때는 zpool set autoexpand=on tank 옵션을 미리 켜두면 리실버링 완료 후 자동으로 용량이 늘어납니다.
  • Scrubbing: 교체가 완료된 후 zpool clear로 에러 카운트를 초기화하고, 한 달에 한 번은 zpool scrub을 돌려주는 것이 데이터 건강에 좋습니다.

© 2025 Solaris Veteran Engineer. All rights reserved.

반응형