treedown’s Report

システム管理者に巻き起こる様々な事象を読者の貴方へ報告するブログです。会社でも家庭でも"システム"に携わるすべての方の共感を目指しています。

※https化しました。その影響でしばらくリンク切れなどがあるかもしれませんが徐々に修正していきます。 リンク切れなどのお気づきの点がございましたらコメントなどでご指摘いただけますと助かります。

(2/3)ちょっと安いNAS=RAID5の障害対策

前回で理解しているRAID5の特徴を書き出してみました。
今日はその前回を踏まえて、RAID5の障害対策について考えてみた点をご報告です。

自分がRAID5を避けている理由はこの障害対策にある、という事が改めて自己認識できました。

RAID5はRAID1やRAID6ないしRAID10と比較して、障害の際の対処にはスピード感が要求されるイメージです。
RAID5の障害で個人的に注意しているポイントを項番毎に書き出してみます。

f:id:treedown:20180819223630p:plain

RAID5のNASで検討事項があって、考えたことと何に注意しなきゃいけないかを主に自分用に書き出した内容のうち、いざ障害が起きたときを想定して頭の中でシミュレーションした内容となります。

(1) ディスク障害

原則として同じディスクを使わないといけないRAIDで一台目が故障したらすぐ交換をしないと、データは損失してしまいます。
故障検出後すぐ交換できる体制を用意しておきたいのがRAID5ですね。
RAID6やRAID10だと2台までの故障に耐えられますし、RAID1だと1台故障しても丸々同一の状態のHDDがもう一台残っていると考えると、RAID5のシビアな故障対処よりは余裕があります。
(※RAID10は特定の2台ということがあって2台故障でアウトになるケースもあります。)

(2) 筐体の電源障害

(RAID1との比較だと)
HDDの故障ではなくて筐体の故障だったり、ACアダプタなどの電源が故障して起動しなくなったりした場合には、RAID5は別の方法で既存のHDDからデータを取り出すことが困難です。RAID1では無事な片方のディスクを取り出してデータを抽出することもできる(事前に検証は必要ですが)ことが多いです。HDDじゃない筐体の故障でも即データ損失という点がRAID1よりリスクは大きいという点は考慮しておきたいポイントですね。
…でもこれはRAID6やRAID10でも同様ですね。
これに対してはバックアップを別途用意するしか手がない、ということになります。

(3) ディスク障害に際しての二次障害

これは良くある話で、RAID5のディスク一台故障でパリティ情報から読み出し中、あるいは故障ディスクを交換してリビルド(再構成)中、別のディスクの故障が発覚して結局故障ディスクを交換したのにデータ全損失になってしまった…、これもRAID5ならではのポイントになりますね。
二台目の故障を許容するRAID6やRAID10だとリビルド中に二台目故障があっても何とかなる、RAID5ではどうにもならない、だからRAID6やRAID10のほうが安心、ってのはあります。
で、安価な価格帯のNASではRAID6対応の機器は選択肢が少なく、RAID10を選択することが多くなるという流れが多いです。

リビルド(再構成)時の負荷が大きい

RAID5だけでなくRAID6にも言えることですが、パリティという冗長データを保有して冗長性確保をしている関係上、リビルドの際にはパリティ計算という処理が必要になり、この負荷が安価な機器にとってはなかなかの負荷となります。
一台目のHDD故障で縮退稼働となった場合、失われたHDDが持っているはずのデータを無事なHDDのパリティから計算してデータを読み出す関係上、どうしても読み出し処理が遅くなってしまいます。複数のユーザで共有しているデータだと使い方にもよりますが、使うには厳しいくらいのレスポンスです。
で、HDD交換してリビルド(再構成)したとしても、結局無事な残りのHDDからパリティ計算してデータを読み出して、交換した無事なHDDに書き出す関係上、縮退稼働と同様にレスポンスは遅くなります。リビルド(再構成)が終わるまでひたすら我慢。

RAID10はこのパリティ計算が発生せず、単純にミラーリング(RAID1)をストライピング(RAID0)しているだけなので冗長性確保のための負荷はミラーリングによるHDD同士の複製であることから、リビルド(再構成)時の負荷は割と低いといえます。
RAID10とRAID5/6の両方が使える同じ筐体でしっかりと比較したわけではないのですが、RAID10のほうがリビルド(再構成)時の負荷は低いのでリビルド時の利用の影響も少ない、という話。

リビルド(再構成)時の負荷、という負荷がHDDに掛かることでリビルド(再構成)中の二次被害が発生するという点も考慮しておきたいところです。

続きます

リビルドで思い出した。リビルドやってるときのどうこうの話もそうですが、リビルド終わらないよね、って話もありますね。
その辺の話、次回に続きます。