RAID 6: フォールトトレランス(耐障害性)とパフォーマンスの融合で、

Written By: Ontrack

Date Published: 2023/11/06 2:37:45

RAID 6: フォールトトレランス(耐障害性)とパフォーマンスの融合で、

Healthy RAID 6 Array

RAIDアレイとは、データの保護、性能の向上、またはその両方を目的として、ソフトウェアまたはハードウェアによって特定の方法で構成されたディスクの集合体です。RAIDという用語は、独立したディスクの冗長配列(redundant array of independent disks)の略です。RAIDアレイには多くの種類があり、冗長性や耐障害性だけでなく、読み取りや書き込みの速度にも影響してきます。

RAID 6もRAID 5と同様、1980年代に開発されました。ハードウェアコントローラで構築されたRAID 6アレイは、冗長性と速度を考慮すると、最適な妥協点としてよく利用されます。RAID 6アレイは、少なくとも4台のディスクを必要とし、書き込み性能への影響を最小限に抑えながら、読み取り速度を向上させます。このRAIDレベルでは、2つのディスク故障を許容することができます。

RAID 6の構成はどのようなものなのか?

RAID 6は、パリティとデータストライプを使用する点で、RAID 5と似ています。違いは、RAID 5がパリティを1つ持つのに対し、RAID 6はパリティストライプを2つ持っていることです。これにより、RAID 6アレイは1台だけでなく、2台のドライブ故障にも耐えることができます。ほとんどのRAID 6構成の最初のパリティストライプに含まれるデータは、他のストライプからのデータのXORであり、2番目のパリティストライプは、通常、独自のアルゴリズムです。

RAID 6アレイでは、2台のディスク分のデータをパリティに割り当てる必要があります。つまり、RAID 6アレイは、同じサイズのRAID 10よりも、ドライブ2台分のスペースがパリティに割り当てられるだけなので、実装コストはそれよりも安いです。また、RAID 6はRAID 1よりも柔軟性があり、ボリュームサイズも大きくすることが可能です。

Healthy RAID 6 Array

上の例では、Dell PowerEdgeサーバーに見られるような5ドライブのRAID 6アレイを使用しています。最初のストライプのドライブ4にある最初のパリティブロック(パリティ1)は、データ1(ドライブ1)、データ2(ドライブ2)、データ3(ドライブ3)という名前のブロックからのデータのXORです。

最初のストライプのドライブ5にある2番目のパリティブロック(パリティ2)は、データ1、データ2、データ3のデータの組み合わせで、メーカーとコントローラによってはパリティ1を含むことがあります。これらのパリティ計算は、異なるドライブの組み合わせを使用するすべてのデータストライプで繰り返されます。

RAID6アレイにおけるパリティの役割について

パリティは数学的な機能であり、失われたデータの再構築を可能にするため、さらなる保護を提供します。すべてのデータストライプの一部としてパリティのブロックを持つことで、ドライブの1つまたは複数が故障またはオフラインになった場合でも、システムを再構築することができます。RAIDコントローラやRAIDソフトウェアは、パリティを使用することで、失われたデータセグメントを事実上再構築することができます。

下の例では、ドライブ2が故障したことがわかります。

RAID 6 with One Failed Drive

ドライブを失うと、アレイはデグレードモードに移行します。デグレードモードでは、RAIDコントローラはデータストライプとパリティを必要に応じて組み合わせ、オペレーティングシステムに良好なデータを表示します。この例では、コントローラは最初のストライプでデータ1、データ3、パリティ1を組み合わせて、データ2の欠落データを置き換えます。2番目のストライプでは、データ5を置き換えるために、データ4、データ6、およびパリティ1が使用されます。3番目と4番目のストライプでは、すべてのデータドライブが存在するため、パリティは必要ありません。

1つのストライプに2つのパリティブロックがあるため、RAID 6では2台のドライブに障害が発生しても大丈夫です。下の例では、ドライブ2とドライブ4が故障していることがわかります。

RAID 6 with Two Failed Drives

2台のドライブを失った場合、コントローラはデータストライプとパリティ1およびパリティ2を組み合わせて、欠落したデータを再作成するために使用します。この例では、コントローラは最初のストライプにデータ1、データ3、パリティ2を組み合わせて、データ2の欠落データを置き換えます。2番目のストライプでは、データ5を置き換えるために、データ4、データ6、およびパリティ1が使用されます。3番目のストライプでは、データ7、データ9、パリティ2がデータ8を置き換えるために使用されます。

RAID6アレイにおけるホットスペアの動作について

RAID 6 Healthy Array with Hot Spare

ホットスペアとは、RAID 6アレイに追加できる1つまたは複数の追加ドライブのことで、ドライブが故障した場合に早急に復旧できるようにするためのものです。上記の例では、健全なRAID 6アレイにホットスペアが1台追加されています。故障が発生してドライブが必要になるまで、ホットスペアにはデータが含まれないことに注意してください。

ホットスペアがシステムで利用可能な場合、障害発生時にコントローラーが自動的に障害ドライブからホットスペアへの欠損データの再構築を開始します。

RAID 6 One Failed Drive with Hot Spare

上の例では、ドライブ 2 が故障したことを示しています。システムはホットスペアを使用し、ドライブ2からホットスペアに失われたデータをすべて再構築しました。ドライブ2をシステムから取り外し、新しいドライブ(新しいホットスペアまたは新しいドライブ2)と交換し、その上でデータを再構築することができるようになりました。

なぜホットスペアを使うのか?ドライブが故障した場合、再構築には時間が重要です。デグレードモードで動作させると、残りのドライブにさらなるストレスがかかり、迅速に修正しないとさらなる故障の原因となる可能性があります。また、同じ製造ロットのドライブに同様の欠陥がある可能性もあり、他のドライブがすぐに故障する可能性もあります。ホットスペアを1台以上用意しておくと、復旧が早くなります。

RAID 6アレイの故障の原因について

RAID6アレイが故障する原因はいくつかあります。ここでは、Ontrackで目にする主な原因をいくつか紹介します。

  • 複数のディスク障害
  • 電源の問題(電源スパイクや低電圧など)
  • RAIDコントローラまたはRAIDソフトウェアの障害
  • RAIDの破損(論理的な破損を含む)。
  • 洪水・水害・火災の被害
  • 故障や部分的な再構築作業

RAID 6のデータ復旧は可能なのか?

RAID6アレイからのデータ復旧は可能です。RAID 6アレイのデータ復旧は複雑で困難な場合がありますが、一般的には成功することが多いです。最大の問題は、2番目のパリティブロックを作成するために使用される独自のアルゴリズムで、各メーカーによって実装が異なるため、これをサポートするツールを研究・開発するためのカスタム開発が必要になることがよくあります。

データ消失の原因はいくつかあり、それぞれに対する復旧作業も異なります。以下に いくつかの例を挙げます。

故障ドライブ1台の場合のデータ復旧

RAID 6 with One Failed Drive

RAID 5アレイと同様に、アレイの1つのドライブが故障した場合、パリティを使用して不足するデータを再構築することができます。このシナリオでは、Ontrackは通常、データの100%を復旧することができます。機能しないアレイがある場合、アレイのすべてのドライブがクリーンルームでイメージを抽出されます(可能であれば故障したドライブを含む)。その後、これらのイメージを使用してアレイを仮想的に再構築します。RAIDが組み立てられたら、ファイルシステムやボリュームに破損がないか解析し、仮想的に修復してデータを抽出します。失われたデータストライプはパリティから再構築できるため、故障したドライブは必要ないことが多い。

故障した2台のドライブでデータ復旧

RAID 6 with Two Failed Drives

RAID 6は、1台を除くすべてのドライブが機能する必要があるRAID 5アレイとは異なり、最大2台のディスクが故障してもデータに影響がないように設計されています。複数の故障したドライブから復旧するプロセスは、1台のドライブ故障と同様です。 機能しないアレイを受け取り、クリーンルーム内で故障したドライブを含むドライブをイメージ抽出します。ドライブ上のデータが最新であれば、アレイの完全復旧のためには、故障したドライブは必要ない場合があります。その後、これらのイメージを使用して、アレイを仮想的に再構築します。

上記の例では、第1ストライプのData 1、Data 3、Parity 2がData 2の再構築に使用されます。データ4、パリティ1、データ6は、2番目のストライプのデータ5を再構築するために使用されます。データ7、パリティ2、データ9は、第3ストライプのデータ8を再構築するために使用される。

RAIDアレイが事実上再構築されると、ファイルシステムやボリュームが破損していないか解析されます。ファイルシステムの破損に加え、エンジニアは一貫性のないデータや古いデータも探します。これは、ドライブ故障の間に時間が空いて、ドライブの1つが劣化している場合に発生します。データ復旧エンジニアは、ボリュームを仮想的に修復し、良好なファイルデータを抽出できるように、この種の損傷を認識する経験が必要です。

複数の故障したドライブからのデータ復旧

RAID6アレイの場合、2台以上のドライブ故障があっても完全復旧が可能です。

RAID 6 Multiple Failed Drives

上記の例では、RAID 6アレイで、5つのディスクの一部の領域に損傷があります。1つのストライプに2つ以上の故障ブロックがない場合、失われたデータを再構築することが可能です。Ontrackは、各ドライブの可能な限り多くの部分のイメージを抽出します。

その後、これらのイメージを使用してアレイが仮想的に再構築されます。上記の例では、ストライプ1のデータ1、データ3、パリティ2がデータ2の再構築に使用されています。データ4、データ5、データ6はすべて無傷であるため、ストライプ2にはパリティは必要ありません。データ7、パリティ2、データ8は、3番目のストライプのデータ9を再構築するために使用されます。

RAIDアレイが仮想的に再構築されると、ファイルシステムまたはボリュームが破損していないかスキャンされます。復旧可能なデータは、仮想的に再構築されたアレイから新しいメディアに抽出され、本番に戻されます。

 

購読

KLDiscovery Ontrack株式会社 〒100-0011 東京都千代田区内幸町2-2-3 日比谷国際ビル3F (全国拠点一覧)