gp500physics’ blog

元・GP500 Physics 開発ブログです。

身をもって知った RAID5 の危険性。4ベイ NAS のよりよい使い方を考えた!

やってしまいました。Synology の NAS でデータの管理を始めて2年弱。ボリュームはSHR (Synology Hybrid RAID)。容量増加に対応した、RAID 5 です。HDD が故障しても、次の HDD に交換することで凌ぐことができていたのですが、ついにボリュームが壊れてしまいました。

f:id:gp500physics:20200414205751j:plain

原因は、RAID 5 の再構築中に 2台目のドライブが故障してしまったことでした。よくネット上の記事で目にしていたことが、ついに自分の目の前で本当に起きました。データは回復不能になってしまいました。

幸い、本当に大切なデータは後述する専用 PC でポータブル HDD にバックアップをとっていたので事なきを得ましたが、バックアップをとっていなかった写真などは消えてしまいました。データの消失は何度も経験しているものの、やっぱり儚い。

何度か HDD が故障し、ピンチを切り抜けてくる中で、最強のように思っていた RAID 5 が実はあまり安全ではないことは、なんとなく分かってきていたものの、ボリュームが大きくなりすぎてデータの移動などがやりにくくなってしまっていました。そして今回のクラッシュです。

ボリュームを作り直すことができなくなってしまったので、改めて 4ベイ NAS のよりよい運用方法を考えて環境を構築しなおしたので、それをまとめようと思います。

 

1. 防振対策。

まず大切にしているのが、防振対策です。HDDって結構振動するので、これをどうやって打ち消すか。うちで使っている Synology の NAS は、HDD の振動対策が全くされていないので、HDD から出る振動がHDD自身にダメージを与えてしまいます。もちろん、隣の HDD にも。

少しでも振動を打ち消すために取り入れているのが、防振ゴムの活用です。ネジのところにシリコンワッシャーと、NAS の底面に振動吸収材を貼り付けて、振動の低減を図っています。シリコンワッシャーはシャーシの内側に挟み込める方が絶対にいいのですが、スペースがないので仕方なく外側からです。

f:id:gp500physics:20200414210336j:plainf:id:gp500physics:20200414210355j:plainf:id:gp500physics:20200414210413j:plain

ブチルゴムでできた振動吸収材には、絶大なる信頼があります。1ベイ NAS や外付けのHDDなら、絶対に使った方がいいです。振動をかなり打ち消すので、経験上、HDD の寿命が確実に長くなっています。

f:id:gp500physics:20200414213019j:plainf:id:gp500physics:20200414213038j:plain
以前使っていたI-O Dataの1ドライブNAS。振動対策をすることで、7~8年使えたものもありました。

 

2. 4ベイは1ベイ+3ベイで使う。

これが今回の目玉です。4ベイを1つのボリュームにするのではなく、1つのベイに大容量の HDD を装着してメインで運用。残りの3ベイには手頃な容量の HDD を装着し、1つのボリュームにして、定期的にメインのボリュームをバックアップする。これでうまく運用できるんじゃないかと思いました。

メインのドライブには、8TB の Seagate IronWolf を調達しました。Synology の NAS は IronWolf を公式にサポートしていて、HDD の健康状態をより詳しくチェックしてくれるようです。初めての NAS 用 HDD、初めての 8TB HDD です。

f:id:gp500physics:20200414211903j:plainf:id:gp500physics:20200414211921j:plainf:id:gp500physics:20200414211939j:plain

残りの 3台の HDD は、今まで使っていた HDD をそのまま流用します。普通のWDの Caviar Green と Blue です。今までに買って、交換して使わなくなった HDD を順番に寿命が尽きるまで使う計画です。中古を使うから、RAID 5 の再構築に失敗したのは当たり前の話なのですが、たくさんあるので…。

さて、ボリュームの構築ですが、メインの IronWolf は 1ドライブなので Basic。残りの 3ドライブは RAID にするか迷った結果、ドライブの領域をただくっつけるだけの JBOD にすることにしました。

エントリー向けモデルの NAS なので、LAN はギガビット。RAID 0 とか RAID 5 にしたところで速度は出ません。たぶん同時書き込みをしない JBOD の方が HDD への負担が少ないよね、という安直な考えです。

f:id:gp500physics:20200414212758p:plain

これで、8TB のボリューム1 と、9TB のボリューム2 ができました。合わせて 17TB、なかなかの容量です。メインボリュームが壊れると財布に厳しいですが、ボリューム2 が壊れる分には問題なし。余っている HDD と交換して、ボリュームを作り直せばいいのです。

 

3. バックアップはNASのアプリで。

メインのボリュームから JBOD のボリュームへは、週1回の頻度でバックアップすることにしました。バックアップには Synology の NAS の中にある、Hyper Backup というアプリを使います。なんでこれを使ってなかったんだろうね、っていうくらい手軽に設定できました。

f:id:gp500physics:20200414214206p:plain

 

4. 専用PC を使い、ポータブルHDD にもバックアップ。

これだけでは不十分。今回のクラッシュで絶望せずに済んだのは、バックアップ専用PC の存在です。3000円くらいのジャンクで買ってきたノートPC を整備して、これにポータブルHDD を接続して運用しています。

f:id:gp500physics:20200414215512j:plainf:id:gp500physics:20200414215532j:plain

大幅にデータを追加・変更したと自覚したときに手動で起動。起動後はバッチファイルが自動で起動し、netコマンドでネットワークドライブを割り当て、robocopyコマンドで勝手にバックアップ、shutdownコマンドでシャットダウンするところまで自動で動くようにしています。

net use [設定するドライブレター]: "[マウントするネットワークドライブ]" [パスワード] /user:[ユーザー名]
robocopy [転送元フォルダ] [転送先フォルダ] /MIR /R:0 /W:0 /TEE /NDL /XJ /XJD /XJF /FFT /S /J /copy:DT
shutdown /s /t 60

バッチファイルの中身は上のような感じにしています。これをメモ帳に書いて、batファイルで保存します。robocopyコマンドの後半のおまじないは、Synology の NAS から Windows(またはその逆)にファイルコピーするときにうまくいくように調整したものです。

普段使いの PC でこのバッチファイルを走らせても良さそうなものなのですが、作業中に起動されるとうっとうしいし、手動だとなんとなく忘れてしまうので、専用PCをつくって運用しています。物理的に電源を入れることは、なんとなく忘れない

 

これで、3重にバックアップできる環境が整いました。RAID は使わず、自動バックアップを定期的に実行する環境になりました。よほどのことがない限り、データをすべて喪失することはないと思います。これからはこの環境でしばらく運用してみたいと思います。