【AT独占】mineo(マイネオ)
テレワークにおすすめのモバイルPC
本ページはプロモーションが含まれています。
  
 

【自作NAS】NAS4Freeの容量拡張(5) HDD故障と交換、RAID再構築

 

スポンサーリンク

 
【自作NAS】NAS4Freeの容量拡張(5) HDD故障と交換、RAID再構築
   

自作NASサーバ NAS4Freeの容量不足を根本解決する容量拡張を実行した話の続き。
SATA拡張カードを買いなおすことにしたが、次のトラブルに見舞われる。
NAS4Free/Xigma NASについてのまとめはこちら。

連載記事はこちら
  
このストレージの記事もチェック!
  

突然のHDD故障

SATAカードの調査をしている間も、バックアップをやめるわけには行かない。
毎週恒例でやっているバックアップには、以前レビューしたEaseUS ToDo Backupを使っている。

その後の調整を経て、バックアップについてはまずローカルドライブに書き出して、
手動でNAS4Freeにコピーしている。
時々ローカルの4TB(バックアップファイル一時書き出し用)が一杯になり
失敗することがあるが、そのときは古いバックアップファイルから削除している。
直接ネットワークドライブのNAS4Freeに書きだすよりは速い。
いつものようにバックアップしてローカルHDDからNAS4Freeにコピーしていたら、
いつまでも手動コピーが終わらないことに遭遇。
エクスプローラのコピー進捗を見ると、0MB/sだ
つまり停止している。容量がいっぱいか、フルに近いのかな。
NAS4Freeのコンソールに入って確認する。
容量は、。。。

え、状態がUnavailableじゃないか。なんで?

何度かリトライしてやっと判明した。
300GB超の写真のバックアップの途中で必ず止まっている。
最初は調子よくコピーしていたが、徐々にスピードが落ちて、最後には、0MB/sだ。
その時のコンソールをみると、状態がDegradedとなっていた。

ZFSでのエラー表示

ZFSでのエラー表示

これはRAIDを構成するドライブが故障していることを示す。
NAS4Freeを作って初めてだ。

RAIDとドライブ故障の許容

一般的な話なので知っている諸兄は読み飛ばしを。

止まったりなくなって困るものは、そうならないように仕組みを考えるのがエンジニアリングの鉄則だ。
古くは日航機墜落時の羽を動かす油圧系統の故障もそうだった。
大事な制御は必ず2つ以上のルートを用意する。
こういうのを冗長系という。英語ではRedundantだ。
IT系も例から漏れない。データセンタのサーバは通常は電源を2つずつ実装している。
1つ電源が壊れても大丈夫ということ。(ただし、壊れたらすぐ交換することが運用していく条件)

データもしかり。
失われて困るデータは複製を持つ。それだけでは不十分だ。
経年劣化によりデータを保持する磁性体が壊れ、いつの間にかデータが壊れているかも知れない。
そもそもストレージ装置が壊れて、データを復元できないことも考えられる。
そういう事態を避けるため、ストレージに対しても冗長系の考えが取り入れられた。
つまり余計な(重複する)データを保持することで、ストレージ装置が壊れても
データを復元できるようにする。

冗長度により、RAIDの種別が分けられる。
()内はZFSでの名称。

  • RAID0 冗長度なし 1台壊れると復旧は不可能
  • RAID1 通常は2本を1組にして構成する。
    1台壊れても復旧できる。論理容量は物理容量の半分。
  • RAID5(RAID-Z) 3本以上を1組にして1本を冗長(パリティと呼ぶ)とする。我が家では、5本で組んでいるので、4本のデータに対し1本のパリティとなるので、論理容量は物理容量の80%だ。
  • RAID6(RAID-Z2) RAID5に対してパリティを2台にしたもの。

我が家ではRAID-Zを5台で構成している。
ここで、1台が壊れた。
まずは交換用のHDDを用意する。

【在庫限り!ファイナルセール!】 Western Digital HDD 6TB WD Blue PC 3.5インチ 内蔵HDD 【国内正規代理店品】 WD60EZAZ-RT

アフィリエイト広告  ここから購入いただきますと当ブログに報酬が支払われ、運営資金になります。

今回は在庫として持っていた3TBを使ったが、これからなら6TBかな。

HDD交換

電源を切って、該当のHDDを交換する。そして電源を入れる。

RAIDの再構築(Rebuildという)が始まる。
3TBのデータを再構成するので、長い時間がかかる。2,3日か。これは仕方ない。
再構築中もアクセスできるが、余計に時間がかかるのでやらない。

壊れたHDDはコンソールからシリアル番号で特定できる。
今回は/dev/ada2が壊れているようだ。
ディスクの管理画面を見ると、シリアルコードの下がP04J3だ。
これを探して交換する。

交渉したHDD

交渉したHDD

同じタイプを揃えたので、見た目では区別がつかない。
ケースを開けて、どのHDDなのか探す。
2台が3.5インチベイ、残りが5インチベイにマウンタをつけて設置している。
5インチの方は厄介だな、と思っていたが、フロントパネルを開けたら、
シリアル番号の下4桁を書いたシールが貼られていて、すぐに見つかった。こういう心遣いはいい。

シリアル番号のシール

シリアル番号のシール

5インチベイから外し、改めてシリアル番号を確認。間違いない。
マウンタを外し、予備に買っておいた同じタイプのドライブにマウンタを装着。
ケーブルを元通りつなぐ。
電源を入れて、コンソールを表示。
プール情報を見ると、抜いているのでUNAVAILABLE表示だ。
当然だな。

ドライブ抜き取り後

ドライブ抜き取り後

ドライブを見ると、故障したドライブのシリアル番号のままだが、気にしない。

古いシリアル番号のまま

古いシリアル番号のまま

実際に新しいドライブを認識していると判断できたら、ZFSのツールメニューから
ドライブの交換(replace drive)を選択する。

リビルド実行

リビルド実行

リビルド実行2

リビルド実行2

故障したドライブがどれかを再確認する。

リビルド実行3

リビルド実行3

故障したものと交換するドライブを間違わないように指定する。
新しいものは容量で判断した。

リビルド実行4

リビルド実行4

故障した(データだけ残る)ドライブと新たにada2になった、まっさらなドライブを交換する指示を出す。
これでリビルド作業が始まった。

リビルド開始時のシステム状況

リビルド開始時のシステム状況

開始時点では9MB/s程度のスピードなので、400時間超!との予測。

リビルド実行中

リビルド実行中

次第にスピードが上がっていくが、途中エラーがあり、ビルトが停止
再度やろうとしたがうまくいかず。

リビルド中にエラー

リビルド中にエラー

スクラブでなんとか終わる。
ふう。
エラーの原因はどうもSATAケーブルだったようだ。
ケーブルも交換した。

スクラブ中

スクラブ中

さて、横道にそれだが、いよいよ新しいドライブの認識に再トライだ。
続く

(Visited 3,412 times, 1 visits today)

PR

   
著者プロフィール
irvine
 ソフトウェア設計、ストレージ設計を経てクラウドにかかわる仕事をしている、東京郊外在住のエンジニア。
 仕事でUS,UK,SGなどの国とかかわる。
 自作PC、スマホ、タブレット、AV機器好き。ドラクエウォークはルーチンワーク。Linuxやストレージ、IT業界の動向は興味を持っている。
 新しい機器、サービスに興味あり。年数回のレビュー(自腹購入、ご依頼)と発表されて興味があるものの新製品机上レビューをやっている。
 2022年はJAPANNEXT様のアンバサダーを務めました。
 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です