2008年創刊 · デジタル版 · 2026年6月19日

SMB IT Journal

中小企業のための情報技術リソース

日本語
ストレージ

ホットスペアか、それとも大混乱か

RAIDに安全性の層を追加するための一般的なアプローチは、障害が発生したドライブの交換時間を最小限に抑えるため、予備ドライブを用意しておくことです。この最も極端な形態は「ホットスペア」と呼ばれます。これは予備ドライブを実際にアレイ内に置いておき、アレイがドライブ障害を検出するまで使用しない方法です。障害が検出されると、システムは自動的に障害ドライブを無効化してホットスペアを有効化します。これはまるで人間がドライブをアレイから抜き取り、別のものを挿入したかのように機能し、できるだけ早くリシルバー操作(アレイの再構築)を開始できます。これにより、新しいドライブへの交換時間を数時間・数日から数秒に短縮でき、理論的には安全性を極めて大幅に向上させることができます。

まず、命名規則において私が個人的に誤りだと感じる点を指摘したいと思います。私たちがホットスペアと呼ぶものは、実際にはウォームスペアと呼ぶべきだと考えています。なぜなら、それはすぐに使用できる状態で待機していますが、すぐに使用するために必要なデータを含んでいないからです。シャーシの外に保管され、人間が手動でドライブを交換する必要があるスペアドライブは、コールドスペアと呼べるでしょう。真のホットスペアとなるためには、ドライブはデータで満たされており、何らかの形でRAIDアレイに参加しているメンバーである必要があります。Red Hatは、この用語がディザスタリカバリサイトにどのように適用されるかについて参考となる記事を掲載しています。この違いは重要です。なぜなら、私たちがホットスペアと呼ぶものはデータを含んでおらず、障害が発生したドライブをすぐに置き換えるわけではなく、代わりに失われたドライブを復元するプロセスを即座に開始するからです——これは重要な違いです。

概念を明確に保つために、以降、ベンダーがホットスペアと呼ぶものを「ウォームスペア」と呼ぶことにします。これはすぐに意味をなすようになるでしょう。

ウォームスペアには主に2つの懸念事項があります。1つ目は、ほとんどのユースケースにおけるウォームスペアの非効率な性質であり、2つ目は「自動アレイ破壊」リスクです。

ほとんどの人々は、パリティRAID 5アレイにおける二次ドライブ障害の高リスクを軽減する手段としてウォームスペアの概念にアプローチします。RAID 5アレイはアレイ内の単一ディスクの障害にのみ対応します。単一ディスクが障害を起こすと、アレイはパリティをまったく持たない状態となり、追加のドライブ障害が発生するとアレイが完全に失われます。RAID 5は、与えられた容量に対して非常に低コストで選択されており、このコスト効率を達成するために信頼性を犠牲にしています。そのため、RAID 5はRAID 6やRAID 10などの他のRAIDオプションと比較してリスクが高く、アレイが低下した状態に置かれる時間を最小限に抑えるためにウォームスペアを実装することが一般的です。これにより、アレイはできるだけ早くリシルバーを開始できます。

ここでより関連性の高い要点は、ウォームスペアは一般的に、コスト削減策として信頼性の低いRAIDアレイタイプを使用することへのバッファとして使用されるということです。ウォームスペアはRAID 5アレイで圧倒的に多く使用され、次いでRAID 6アレイで使用されます。どちらも信頼性やパフォーマンスではなく、容量あたりのコストのためにRAID 10よりも選択されます。ウォームスペアの考え方が信頼性向上のために本当に意味をなすケースが1つあります。それはRAID 10にウォームスペアを追加する場合ですが、それについては後ほど触れます。そのシナリオ以外では、現実の世界でウォームスペアはほとんど意味をなさないと感じます。

まず、ウォームスペアを持つRAID 1を検討してみましょう。RAID 1は、2つ以上のドライブによるミラーで構成されています。ウォームスペアを追加することは、ミラーペアの1つが死んだ場合にウォームスペアが直ちに残りのドライブのミラーリングを開始し、短時間で再び保護された状態になれるという点で優れています。それは素晴らしいことです。ただし、1つの小さな欠点があります。ウォームスペアを使用する代わりに、同じドライブをずっとRAID 1アレイに追加しておけば、三次ミラーとして機能したでしょう。この三次ミラー容量のドライブは、アレイの全体的なパフォーマンスを向上させ、ライトパフォーマンスを一定に保ちながら約50%のリードパフォーマンス向上をもたらし、「リミラーが完了次第」の保護ではなく、ドライブ障害が発生した場合の即時保護を提供したでしょう。基本的に、ウォームでアイドル状態で待機するのではなく、真の「ホットスペア」になっていたでしょう。つまり、1円も余分に使わずに、システムはドライブアレイのパフォーマンスと信頼性を高めることができたのです。単純に、余分なドライブを「アレイ内」のホットな状態にしておくことで、災害を待ちながらウォームでアイドル状態に置いておくよりも良かったのです。

RAID 5では、最も一般的なウォームスペアの概念に対してさらに劇的な警告が見られます。RAID 5は、アレイ内の任意のドライブが障害を起こした場合に、パリティを使用してそれを再構築する能力を持つシングルパリティRAIDです。ここから本当の問題が始まります。RAID 1でのリミラー操作は非常に速い場合がありますが、RAID 5のリシルバー(再構築)はかなり長い時間がかかる可能性があります。ウォームスペアは、このリシルバープロセスが正常に完了するまでアレイを保護しません——これは通常数時間かかり、アレイのサイズや負荷によっては数日、さらには数週間または数ヶ月かかることもあります。同じウォームスペアドライブを追加のパリティストライプを持つアレイのメンバーにするタスクを割り当てると、RAID 6が達成されます。RAID 5プラスウォームスペアのために用意した同じドライブセットで、まったく同じ容量のRAID 6アレイを作成できます。再び、上記のRAID 1の例と同様に、これはほとんどホットスペアを持つようなもので、ドライブが別のドライブが障害を起こすのを待って引き継ぐプロセスを開始するためにアイドル状態で待機するのではなく、ライブデータでアレイに参加しています。この場合、アレイは障害が発生した場合にRAID 5相当に低下しますが、再構築時間なしに行われるため、追加ドライブは可能性のある非常に長いリシルバープロセスの後にのみではなく、すぐに役立ちます。したがって、同じコスト、同じ容量で、RAID 5プラスウォームスペアではなくRAID 6でドライブをセットアップする選択は完全な勝利です。

この例をRAID 6プラスウォームスペアで続けることができます。ZFSのやや一般的でないRAIDZ3を除いて、ほとんどのRAIDシステムでは、RAID 6より1段上にトリプルパリティシステムが存在しないため、これは定義が少し難しくなります(例えばRAID 7があったとしたらどうでしょう)。もし存在するなら、RAID 5プラスウォームスペアに対して行われたまったく同じ議論がRAID 6プラスウォームスペアにも適用されるでしょう。ほとんどの場合、RAID 6にウォームスペアを使用するにはRAID 10アレイと比較して正当化する必要があります。RAID 10はRAID 6アレイよりもパフォーマンスが高く、はるかに信頼性が高いですが、RAID 6はRAID 10と比較してコストを節約するために一般的に選択されます。しかし、RAID 6の脆弱性を相殺するためにウォームスペアが使用されることがあります。小さな5ディスクRAID 6アレイにウォームスペアを追加するケースなどでは、ウォームスペアなしの6ディスクRAID 10アレイと1ドル対1ドルで同等です。大きなアレイでは、RAID 6のコストメリットが明確になりますが、コスト削減が大きいほどリスクの差も大きくなります。パリティRAIDシステムは、RAID 10のようなミラーベースのRAIDシステムよりも、アレイサイズに伴うリスクの増大がはるかに速いからです。今日節約したお金は、明日の停止やデータ損失のリスクで支払われます。

ウォームスペアが効果的に機能するのは、RAID 10アレイにウォームスペアを追加する場合です。RAID 1のようなミラー再構築であるため、パリティリスクがなく、RAID 10より上位に、より脆弱なシステムを選択してコストを節約しようとしている論理的な拡張RAIDシステムも存在しません。ここでは、信頼性を高めるためにより費用対効果の高い方法がないため、重要なアレイにウォームスペアを追加することは理にかなっているかもしれません。ただし、RAID 10はウォームスペアなしでも非常に信頼性が高いため、RAID 5またはRAID 6にウォームスペアを検討しているショップは、以前に満足しようとしていた信頼性をすでに超えているシンプルなRAID 10で論理的に止まるでしょう。そのため、それらのより脆弱なシステムを検討しておらず、可能な限り最も堅牢なオプションを探しているショップだけが、論理的にRAID 10プラスウォームスペアをソリューションとして見るでしょう。

技術的な正確さのために言及しておくと、RAID 10は標準的な2ディスクRAID 1ミラーの代わりにRAID 0ストライプに3ディスクRAID 1ミラーを使用することで、リードパフォーマンスを向上させ、信頼性を劇的に改善できます(ただし50%のコスト増)。これはRAID 1の例で示したことと同じです。これは実世界ではほとんど求められない信頼性のレベルですが、存在可能であり、オプションです。通常、これは物理アレイシャーシのドライブ数制限によって制限されるとともに、異なるシャーシに完全に別個のセカンダリRAID 10アレイを構築し、これらを高レベルでミラーリングして事実上RAID 101を作成することと競合するため、実質的に今日の一般的な高エンドストレージアレイクラスタの結果です。

2番目の懸念は「自動アレイ破壊」です。これは、RAID 5とRAID 6(またはまれなRAID 2、RAID 3、RAID 4、RAIDZ3)のパリティRAIDシナリオにのみ適用されます。ウォームスペアの概念では、ドライブが障害を起こすとウォームスペアがアレイコントローラーによって自動的かつ即座に交換され、アレイのリシルバープロセスが直ちに開始されます。リシルバーが完全に信頼できるプロセスであれば、これは明らかに非常に歓迎されることでしょう。しかし残念ながら、現実はまったく異なります。

リシルバープロセス中、パリティRAIDアレイは回復不能読み取りエラー(URE)が発生するリスクにさらされます。シングルパリティRAIDリシルバー(RAID 2~5)でURE が発生すると、リシルバープロセスが失敗し、アレイは完全に失われます。これは重要な点です。なぜなら、追加のドライブは障害を起こしていないからです。つまり、ウォームスペアが存在しなければリシルバーは開始されず、データは依然として無傷で利用可能だったでしょう——通常よりも少し遅く、二次ドライブ障害の小さなリスクはありますが。今日の大容量ドライブではURE率が非常に高く、大きなアレイではリスクが「可能性がある」から標準的なリシルバー操作中に「予想される」まで高まる可能性があります。

多くの場合、ウォームスペア自体が期待されるデータの救済者ではなく、データ損失のトリガーになる可能性があります。生き残れたはずのアレイが、それを管理する人間が最初のドライブの障害さえ通知される前に、リシルバープロセスによって破壊される可能性があります。人間が関与していれば、少なくとも、リシルバーが成功しない場合に備えてリシルバーを開始する前にアレイの新しいバックアップを作成するという手順を踏むことができたでしょう。また、リシルバーをいつ開始するかをスケジュールすることもでき、アレイが高負荷を受けにくいビジネスアワー後や週末まで待つことができたでしょう。

デュアルおよびトリプルパリティRAID(それぞれRAID 6とRAIDZ3)もパリティに基づいているため、URE リスクを共有します。追加のパリティレベルによってこのリスクを軽減し、ほとんどの場合成功しています。特に非常に大きなRAID 6アレイではリスクが依然として存在しますが、スピンドルベースのより大容量のストレージメディアが市場で利用可能になるまでの数年間は、大多数のストレージアレイにとってリスクは概して非常に低いままです。

パリティRAIDとURE リスクに関する最大の問題は、パリティRAIDへの推進力(コストを下げるために追加のデータ整合性リスクに直面する意志)が、URE リスクの高まりを引き起こす推進力(低コストの非エンタープライズSATA ハードドライブの購入)と同じであることです。パリティRAIDに直面しているショップは、一般的に大きくて低コストのSATAドライブでそれを行い、2つの非常に危険な要素を組み合わせています。非パリティRAID 1またはRAID 10を使用すると問題を完全に排除でき、高信頼性のエンタープライズSASドライブを使用すると、リスク要因を1桁のオーダーで劇的に削減できます(表現ではなく、実際に1桁の変化です)。

さらに、リシルバー操作中は、パリティシステムのパフォーマンスが長期的な停止に相当するほど劇的に低下する可能性があります。特に大きなアレイでのリシルバープロセスは非常に集中的であるため、エンドユーザーは完全に障害を起こしたアレイとリシルバー中のアレイを区別できない場合があります。実際、リシルバーは極端な場合に非常に長くかかり、非常に破壊的であるため、ビジネスへのコストが、単純にアレイが完全に障害を起こしてバックアップからリストアした場合よりも高くなる可能性があります。このリシルバーの問題はRAID 1とRAID 10には影響しません。再び、これらはパリティではなくミラーRAIDシステムであり、リシルバープロセスは些細なもので、システムのパフォーマンス低下は最小限で短命です。極端な場合、パリティリシルバーは数週間または数ヶ月かかる可能性があり、その間システムはオフラインかのように動作します——このプロセス中のいつでも、上記で言及したURE エラーが発生する可能性があり、リシルバーが終了し、いずれにせよバックアップからのリストアが強制されます。(典型的なリシルバーは数週間かかりませんが、多くの時間かかり、数日かかることも珍しくありません。)

最終的な概要は以下のとおりです(従来の用語「ホットスペア」を再び使用): 「ホットスペア」なしのRAID 10は、ほぼ常に「ホットスペア」ありのRAID 6よりも優れた選択です。「ホットスペア」なしのRAID 6は、常に「ホットスペア」ありのRAID 5よりも優れています。追加のミラーメンバーを持つRAID 1は、常に「ホットスペア」を持つRAID 1よりも優れています。したがって、ホットスペアを持つどのRAIDレベルを選択するにしても、単純にRAIDの信頼性を1レベル上げて「ホットスペア」を削除することで、同等またはほぼ同等のコストでパフォーマンスと信頼性の両方を最大化できます。

ウォームスペアは、パリティRAIDと同様に、その全盛期がありました。実際、パリティRAIDが広く普及することが理にかなっていた時期——URE エラーが起こりにくく、ディスクコストが高かった時期——ウォームスペアドライブも同様に意味をなしていました。それらはうまく組み合わされていて、一方が意味をなすときにもう一方もよく意味をなしていました。しばしば見落とされているのは、パリティRAID、特にRAID 5が有効性を失うにつれて、予期しない形でウォームスペアもそれに引きずられてきたということです。

タグdisk drive hard disk raid storage

広告

SMB IT Journal — the IT resource for small business