TrueNAS のハードディスク交換手順を掲載しました。
FreeNAS のハードディスク交換手順の新しいUIでの焼き直しになります。
FreeNAS は RaidZ によるソフトウェアRAIDがあるおかげで、MirrorやRaidZ1/2/3などに設定しておけば、ハードディスクが故障した時もいきなりデータを失うことはありません。
そこで、仮想マシン上の FreeNAS のハードディスクを1本引っこ抜いて交換してみました。
以前の記事を掲載した時点では、ネット上ではシェルで zpool コマンドを使用する例が多かったのですが、現在は GUI を使う例が多くなった印象です。
せっかくの FreeNAS なのでやはりここは GUI で実行すればいいと思います。
ということで、新しい 11.3 の UI で説明してみます。
ESXiの仮想マシン上で実験してみます。
オンラインのままハードディスクを1本取り除きました。
右上のベルのマーク(Alerts)に赤いバッジが出ています。(クリックすると上のメッセージが確認できます)
また、
Poolのところにも「DEGRADED」(劣化)の表示が出ています。
(なんかいい訳語が思いつかなかったのでテキトー)
障害の状態を確認します。
Storage > Pool
で
対象のPool (今回は tank )の右側の歯車 > Status
今回は、tank の下の RAIDZ2 の本来 da4p2 があるべきところ(上から3番目のドライブ)がなんか変な文字列になってて、「REMOVED」となっているのが確認できます。
(仮想マシンのディスクを取り外したので、「REMOVED」ですが、故障の時は、「UNAVAIL」とかじゃないですかね)
今回の画面写真撮っているのは仮想マシンなのでシリアルナンバーが表示されていませんが、物理マシンの場合は、
Storage > Disks
を見ると、上記のように各ドライブのシリアルナンバーが確認できるので、障害が発生しているドライブを特定する参考になると思います。
仮想マシンなので、オンラインのままやりますが、
ドライブを特定したら、一旦シャットダウンして、障害の発生したディスクを交換して、再度起動します。
右端の縦三点から Replace
右端の「▼」
交換できるディスクが認識されていればプルダウンに表示されて選べるハズですので、選択します。
「REPLACE DISK」
交換用のディスクが空じゃない場合は、
■ Force
にチェックして強制的に書き換えることもできます。
(再使用するときも危ないので、 Force オプションより、Clean なドライブにしておくのがいいとは思いますが)
交換成功の表示。「CLOSE」
今回は空っぽのPoolのディスク交換なので、一瞬でRESILVERが完了し、「Status: FINISHED」となっていますが、物理ドライブでそれなりにデータがある場合は、それなりに時間がかかります。
下の方は、交換中の表示ですね。
ちぐはぐなので、右上の「REFRESH」をクリック。
da4p2 が ONLINE になって、いつも通りの表示に戻りました。
Resilver (再構築)中は、全ディスクがフルにアクセスされますので、コレが完了するまでの間にまたどれかのドライブがダウンする恐れもあります。特に同時に購入したハードディスクなど、立て続けに障害が発生することがあります。この待ち時間をハラハラしながら祈るよりは、当初構築する際に、 RaidZ ではなく RaidZ2 を構成したりできるといいですね。
進捗は、ときおり、
Storage > Pool (対象の Volume の)右側の歯車 > Status
を見に来るか、
右上のベルのマークの Alert で確認できるかと思います。
(前に実ドライブでやったときはよそ見してたら終わってた)
なお、障害が発生していない状態でも、この要領でハードディスクを順次容量の大きいものに交換していくと、最後のハードディスクを交換したとたんに容量を拡大することができます。
ただし、1台追加して RaidZ → RaidZ2 などの変更や、2台の Mirror → 3台の RaidZ とか、 4台の RaidZ → 5台の RaidZ 、または、4台のRaidZ2 → 1台取り除いて3台でRaidZ1といったことができないのは惜しいところです。
そのため、
Mirrorを複数Stripeする、という方法が堅牢性を多少犠牲にして、容量の拡大ができる構成、ということでアリなのではないか、という話になります。