2011年8月下旬

2011年8月下旬 | 日記の目次へ


2011年8月24日(水) : 故障交換 [PC]

一昨日からdegrade動作に入っていた内向きサーバ(HP ProLiant MicroServer)のZFSプールだが、注文しておいたHDDが届いたので、早速交換することにする。一時的になら止めても全然構わないサーバなので一旦電源を落として交換するのがセオリーだが、ここはひとつアグレッシブに、ホットスワップに挑戦してみる。一応メーカー(HP)公式的にはホットスワップには非対応ということになっているが、材料的には対応しているはずだし、いくつか事例も見付かるので。

結果的には、とりあえず交換には成功。あまりに簡単に進みすぎているのでこれが正しい手順かどうかは分からないが、記録として残しておく。
ちなみに、今回のような交換時に楽できるよう、HDDにはパーティションは切らず、全領域をzpoolに割り当てている。副産物として、AFT(4KB/sector)の制約もうまく乗り越えている模様。

 # zpool status
   pool: zpool0
  state: DEGRADED
 status: One or more devices are faulted in response to persistent errors.
         Sufficient replicas exist for the pool to continue functioning in a
         degraded state.
 action: Replace the faulted device, or use 'zpool clear' to mark the device
         repaired.
  scan: none requested
 config:
 
         NAME        STATE     READ WRITE CKSUM
         zpool0      DEGRADED     0     0     0
           raidz1-0  DEGRADED     0     0     0
             ad4     FAULTED      0   130     0  too many errors
             ad6     ONLINE       0     0     0
             ad8     ONLINE       0     0     0
             ad10    ONLINE       0     0     0
 
 errors: No known data errors 
 # atacontrol list
 ATA channel 0:
     Master:      no device present
     Slave:   ad1 <INTEL SSDSA2M040G2GC/2CV102HD> SATA revision 2.x
 ATA channel 1:
     Master:      no device present
     Slave:       no device present
 ATA channel 2:
     Master:  ad4 <WDC WD20EARS-00MVWB0/51.0AB51> SATA revision 2.x
     Slave:       no device present
 ATA channel 3:
     Master:  ad6 <WDC WD20EARS-00MVWB0/51.0AB51> SATA revision 2.x
     Slave:       no device present
 ATA channel 4:
     Master:  ad8 <WDC WD20EARS-00MVWB0/51.0AB51> SATA revision 2.x
     Slave:       no device present
 ATA channel 5:
     Master: ad10 <WDC WD20EARS-00MVWB0/51.0AB51> SATA revision 2.x
     Slave:       no device present
まずは状況調査。ステータスを見るとad4のHDDが死んでいる模様。別途S.M.A.R.T.情報なども読み取れている(温度監視が出来ている)ので、コントローラは生きてるっぽい。
 # zpool offline zpool0 ad4
 # atacontrol detach ata2
ここでまででad4のHDDがシステム的に切り離されたので、物理的にHDDを交換(ホットスワップ)。特に明記は無かった気がするが常識的に順番に並んでいるはずなので、ドライブベイ1番のHDDを交換。ドライブを取り違えないか最も緊張する一瞬。
 # atacontrol attach ata2
 Master:  ad4 <WDC WD20EARX-00PASB0/51.0AB51> SATA revision 2.x
 Slave:       no device present
 # zpool replace zpool0 ad4
 # zpool status
   pool: zpool0
  state: DEGRADED
 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 Wed Aug 24 21:54:50 2011
     259G scanned out of 5.16T at 74.8M/s, 19h6m to go
     64.7G resilvered, 4.90% done
 config:
 
         NAME             STATE     READ WRITE CKSUM
         zpool0           DEGRADED     0     0     0
           raidz1-0       DEGRADED     0     0     0
             replacing-0  OFFLINE      0     0     0
               ad4/old    OFFLINE      0   130     0
               ad4        ONLINE       0     0     0  (resilvering)
             ad6          ONLINE       0     0     0
             ad8          ONLINE       0     0     0
             ad10         ONLINE       0     0     0
 
 errors: No known data errors
型番が微妙に違うので、微妙な容量差で弾かれたら痛いところだったが、無事にreplaceされる。zpool replaceコマンドを打った時点で自動的にresilverが始まる。最初のうちは残り時間が長く出る傾向がある感じ(上記ログは、ある程度時間が経ってからのもの)。
 # zpool status
   pool: zpool0
  state: ONLINE
 status: The pool is formatted using an older on-disk format.  The pool can
         still be used, but some features are unavailable.
 action: Upgrade the pool using 'zpool upgrade'.  Once this is done, the
         pool will no longer be accessible on older software versions.
  scan: resilvered 1.29T in 12h0m with 0 errors on Thu Aug 25 09:55:12 2011
 config:
 
         NAME        STATE     READ WRITE CKSUM
         zpool0      ONLINE       0     0     0
           raidz1-0  ONLINE       0     0     0
             ad4     ONLINE       0     0     0
             ad6     ONLINE       0     0     0
             ad8     ONLINE       0     0     0
             ad10    ONLINE       0     0     0
 
 errors: No known data errors
今回は約12時間でresilverが完了。だいたい31MB/sくらいで処理されたようで、理論値には遠く及ばないけどまぁ許せる範囲かな。そのまま自動的に定常状態に復帰。


2011年8月下旬 | 日記の目次へ

Tosy <tosy@wig.nu>