異常の認知
とある Blu-Ray をバックアップのため ISO 化してNASに書き込み、
約30GBのファイルをNASから試験的に読み込もうとしていた時の事でした。
(やらなきゃ良かった・・・)
Twitterの監視botから突如リプライが・・・
マジか!!
ってなわけでサーバ上でDISKの死活チェックscriptが稼働しており、
異常があればこのようにbotからTwitter経由で報告されます。
仕事中とかでも報告してくれるので、
カイシャ帰りに交換用DISKが買って帰られるって寸法なのですね。
便利!(・・なのか?)
状況の確認
サーバに乗り込んでzpool statusを見ると・・・
# zpool status
formatの方はと云うと・・・
# format
いやー、これは壊れてますねー。
3本の2TBドライブでRAID-Z構成を取っていますが、
今回壊れたc3t3d0に該当するのは
<ATA-ST2000DL003-9VT1-CC32-1.82TB>
Seagateさんのディスクですね。
なお、残りは
・WDC WD20EARS(WD)
・TOSHIBA MD04ACA2(東芝)
サーバのファイルシステム構成等は 前回故障時のエントリ を参照して頂けますと幸いです。
作業前バックアップ
RAIDのDISK交換中に更にトラブルが発生するとデータをロストしますので、
動いているうちに違うPCへデータのバックアップを取ります。
例えば追加でDISKが壊れてしまうとか、違うDISKを交換してしまったとか。
違うDISKの線が抜けてた、とか。そういう人的エラーが一番怖い。
あと、RAIDのRebuildはDISKに負荷を掛けるので、
DISKエラーの可能性が高まるリスクも存在する。
何事も考えすぎくらいがちょうど良いのです。知らんけど。
交換用ディスクの調達
2TBドライブぐらい買い置きしておきたいのですが、
貧乏人なので壊れ次第調達しています。
Amazonで2TBを見ても(主に配送の)評判が今ひとつでしたので、
翌日の休みを利用して近所のPCショップへ。
今回壊れたのと同じ型番のDISKが6000円ちょっとで売ってたのでそれにしました。
サーバの停止とDISK交換
# shutdown -i5 -g0 -y
サーバをシャットダウン後、開梱して障害DISKを交換します。
サーバはTX100S1を利用していますので、DISKの交換までドライバ1本も使いません。
全部手回しネジでアクセスできます。超便利。
今回のDISKは「P13」と書かれている部分。
「P14」と配線干渉しているので、
一旦「P14」の線を外す必要があります。ちょっと不便。
ちなみにこれは次回に備えた私用メモですが、
・P11:TOSHIBA MD04ACA2
・P12:SSD(システムディスク)
・P13:ST2000DL003-9VT1
・P14:WDC WD20EARS
差し違えたりすると大変なので、
次回はちゃんとこのエントリを見て作業するように。>私
サーバ起動
交換が終わったら電源を投入します。
この時、DISKが認識している事をBIOSから必ず確認します。
OS起動〜Rebuild開始
BIOS上でDISKが認識している事を確認したら、OS起動させます。
# format
それではreplaceコマンドを投入します。
# zpool replace raidpool c3t3d0
少し負荷が高くなり、応答時間を要しますが焦らず待ちましょう。
無事投入されるとRebuildの状況が確認できます。
# zpool status -x (-xは無くても良い)
この時点ではスキャン速度が大変遅い(370KB/s)ですが、
しばらく待つと140MB/sくらいまで速度が上がりました。
前回の速度は約20MB/sだったので7倍近い速度ですが、
今回のDISKは7200rpmだから・・?
あとはRebuild進行中に違うDISKが壊れないことを神に祈るだけです。
完全復旧
zpool replaceコマンドを投入してから3時間40分。
無事復旧させる事ができました。
参考情報
前に壊れた時の記録: サーバ(Solaris11)のDISKが壊れた!!!