HP MicroServerをNAS4freeで運用して5年経ったので、HDDを3TB→6TBに換装した
こんにちは、ひでシスです。
ウチにはMicroServer HP ProLiant N54Lがありまして、Weston DegitalのGreen 3TB HDDを2本差ししてZFSでRAID 1を組んで運用していました。
運用開始は2015年1月ですので、ザッと5年ぐらい運用してきました。WDのHDDは壊れることもなく正常に動いていてくれました。
さて、今回このHDDの空き容量が170GBぐらいになってきた+5年も運用していると経年劣化で壊れそうで心配とのことがあったので、6TBのHDDに交換することにしました。
アキバで購入
最初はHDDをAmazonで買おうかと思っていたのですが、レビューで「梱包が甘くてHDDが段ボール箱の中を暴れまくってた」みたいな意見がいくつか見受けられたので、自分でアキバに行ってHDDを購入することにしました。
NAS用のHDDを買いに来ました (@ 秋葉原駅 in 千代田区, 東京都) https://t.co/LsvVFXWXiW
— ひでシス (@hidesys) 2020年2月10日
ドスパラで、au Payを使ってWeston Degital Blueの6TBとSeagateの6TBを購入です。「RAID 1を同じ型番のHDDで組んじゃうと、同時期に壊れやすいし意味ない」みたいなイメージがあったので、メーカーを分けました。
HDD組み込み
HDD組み込みが4台入るPCのに元々2台入っていたので空きスペースが2つあります。分解して掃除して追加で2台をぶっこみました。
SATAのケーブルがどうしても外れなくて2時間ぐらいかかりました。
ZFSの既存ミラーへのアタッチと同期
NASのソフトウェアは「NAS4free」を使っています。FreeBSDベースのNAS用OSです。5年間問題なく運転できているので超安定したソフトウェアです。
ディスクの認識
「コンフィグの消去とディスクのインポート」ボタンを押すと、ada0とada2が新規デバイスとして現れます。それを確認したらSSHで筐体につなぎに行って
sudo su
zpool attach tank ada1 ada0
zpool attach tank ada3 ada2
と打ち込み、新規追加されたデバイスを元々存在したデバイスのミラーに追加します。(tankはZFSプールの名前です)
参考文献はこれ→ https://docs.oracle.com/cd/E19253-01/819-6260/gcfhe/index.html
するとすぐにデータの同期が始まります。
「resilvering」って出てるのが「データの再同期中やで」って意味です。約1日かかりました。
旧HDDのデタッチと取り外し
「resilvering」が消えたら旧いHDDを取り外せます。
SSHで繋いで
sudo su
zpool detach tank ada1
zpool detach tank ada3
って打つと旧いデバイスがミラーから消えます。で、PCを分解して旧いHDDを取り外して再起動します。
HDDの番号は再度振り直されるので、新しく「ada0」と「ada1」になってますね。
このままだとtankの容量が3TBのままなので、「新しいHDDの容量に合わせて拡張して大丈夫だよ」と教えてあげます。
sudo su
zpool online -e tank ada0
zpool online -e tank ada1
結果
できました。
まとめ
なんだか簡単すぎで張り合いがないですね……。ZFS最強すぎです。また途中でファームウェアのアップデートもしたんですが、全く問題が起こりませんでした。
RAID 5とか6とかZはストライピングされててトラブル時の復旧が難しいし、柔軟にミラープールに入れたり出したりし辛いので、素直にRAID 1を使ったほうが良いです。