スワップとRAID-1を混合する必要がありますか?


9

スワップ領域に使用されている小さなRAID-1アレイのボックスがあります。私がこれを行ったのは、システム内の他のすべてのパーティションにミラーをセットアップしていたからです。

今日、私はこの質問を読んだところ「RAID-1でのスワップは理想的/推奨ですか?」

回答:


17

(おそらく)RAID 1からスワップを外さないでください。

これは、RAID 1にスワップを持って、時にはそれほど重要だが、それの罰金、通常は便利、そしてしばしば必要。すでにRAID 1を使用している場合、スワップを意図的に別の場所に配置する理由はほとんどありません。

RAID 1でのスワップはパフォーマンスが向上する可能性があります

RAID 1上のSWAPは、RAIDの外部にある単一のスワップパーティションよりもパフォーマンスが高いと期待できますが、同じ優先度に設定された2つのスワップだけではありません。

RAID 1への書き込みは、すべてのデータを両方のディスクに書き込む必要があるため、単一のディスクへの書き込みよりも遅くなることがあります。多くの場合、それほど遅くはありません。通常、減速は無視できる程度です。同じIDEコントローラー上に2つのディスクのRAID 1がある場合、速度は遅くなります。ただし、1つのディスクにアクセスしても他のディスクへのアクセスが遅くならない場合、RAID 1への書き込みはそれほど遅くありません。

RAID 1からの読み取りは、単一のディスクからの読み取りよりもほとんど常に高速です。1つのディスクが読み取りによって占有されている場合、他のディスクからより多くのデータを読み取ることができるためです。2つのドライブで構成されるRAID 1からの読み取りは、多くの場合、単一のドライブからの読み取りのほぼ2倍の速度です。

2つの個別のスワップパーティションをRAID 1(または他のRAID)上の単一のスワップパーティションと比較するテストを知りません。単一のスワップパーティションのパフォーマンスがRAID 1スワップと同じかそれ以上であると考える理由はありません。別々のディスクに2つのスワップがある場合、状況はさらに複雑になります。

  • でスワップに異なる優先順位が与えられている場合/etc/fstab、別のページがスワップされます。同じページが両方に同時にスワップされることはありません。2つのスワップは、無関係なスワップされたデータに同時にアクセスする場合は高速ですが、単一のページにアクセスする場合は遅くなると思います。

  • でスワップに同じ優先順位が与えられている場合/etc/fstabデータは(単一のページからでも)ストライプされます。これはRAID 0に似ており、スワップをRAID 1に配置するよりもパフォーマンスが優れている可能性があります。

    理論的には、ハードウェアRAID 1を使用している場合、ソフトウェアストライピングは効率が悪くなる可能性がありますが、スワップからの読み取りが書き込みよりも圧倒的に一般的である異常なアプリケーションがない限り、非RAIDソフトウェアストライプスワップはスワップパーティションよりも優れていると思います。 RAID 1。

    (カーネルはスワップされたデータを複数のスワップパーティション間でストライプ化できるため、スワップのためだけにソフトウェアRAID 0をセットアップする理由はありません。)

RAID 1のパフォーマンスの詳細については、Wikipdiaの記事「標準RAIDレベル」のこのセクションを参照してください。

ストライプスワップに関する非常に重要な情報を提供してくれたgertvdijkに感謝します。

RAID 1で実際にスワップが必要になる場合がある

RAID 1でスワップが必要かどうかは、そもそもRAID 1が必要な理由によって異なります。スワップ内のデータは、通常、非常に不安定であり、それを失うことは、通常、資産の大きな損失を表すものではありません。しかしながら。:

  1. RAID(RAID 0を除く)の利点の1つは、ドライブに障害が発生した場合、コンピューターが動作し続けることです(やや遅い)。ページをディスクにスワップするプログラムを実行している場合(スワップが有効になっている場合、事実上常にそうです)、スワップパーティションを含むドライブ(それが唯一のスワップパーティションであるかどうかに関係なく)が故障し、冗長性がありません。バックアップすると、システムはすぐに正しく機能しなくなります(スワップの使用方法によっては、再起動するまで完全に使用できなくなる可能性があります)。マシンを本番サーバーとして、またはその他の重要なタスクに使用している場合、ダウンタイムが発生します。

    一般的に発生する1つの有害なイベント(1つのドライブの障害)による完全なスワップ障害を許容できる場合は、なぜRAID 1を使用しているのかを自問する必要があります。あなたは良い答えを持っているかもしれません...そしてあなたはそうでないかもしれません。RAID(RAID 0を除く)はディスク障害から保護しますが、RAIDはバックアップソリューションではありません。RAID上のファイルを変更または削除したり、マルウェアがRAID上のシステムに感染したりすると、どこでも即座に変更が加えられます。RAIDを使用しても、そこから回復することはできません。

    冗長性ではなくバックアップが必要で、信頼性が高く、簡単にアクセスできるバックアップがまだない場合は、ドライブの1つをRAIDから完全に取り出して、バックアップに使用する必要があります。(もちろん、オフサイトのバックアップが必要になることもあります。)

  2. コンピュータを休止状態にすると(つまり、suspend-to-disk)、RAMの内容がswapパーティションにコピーされます。したがって、ディスク障害が発生したときにマシンが休止状態になっている場合、実際にはスワップパーティションを失うことでデータを失う可能性があります。


@Eliah、いい答えです。RAID-1への私の動機は、過去のディスク障害に悩まされたことにあります。バックアップによってデータ損失から救われましたが、それでも新しいディスクを入れてマシンを再構築する必要があり、時間がかかりました。このようにして、機能が低下したアレイでもセットアップを実行し、新しいディスクを挿入してアレイを再構築できます。
LRE

@LREデータ損失の原因がドライブの障害である場合、RAIDはバックアップのようにのみ機能します。これはRAIDの完全に許容できる使用法ですが、データの損失の他のすべての原因(これも一般的です)から保護するために、個別のバックアップがあることを確認してください
Eliah Kagan 2013

「RAID 1でのスワップはパフォーマンスが向上する可能性が高い」とは完全には言えません。このwiki.kernel.orgページを参照してください「/ etc / fstabファイルで同じ優先順位を与えるだけで、カーネル自体が複数のデバイスでスワッピングをストライプ化できます。」RAIDの上にスワップを配置することは、私が知る限り、純粋に可用性の問題です。
gertvdijk 2013年

@gertvdijkおかげで、その情報を組み込むように編集しました。RAID 1でのスワップはパフォーマンスが向上する可能性が高いと言った私の意図は、それが単一のスワップパーティション(RAIDではない)よりもパフォーマンスが向上するであろうということでした。クレームを絞り込み、詳細も追加しました。
Eliah Kagan 2013

@EliahKagan、はい私はそれを理解し、バックアップを持っています(そして彼らは過去に私の隠し物を保存しました)-RAID-1はバックアップを補完するためにあります
LRE

3

Ubuntu Serverのドキュメントの高度なインストールセクションでは、ソフトウェアRAID 1アレイへのインストールについて説明しています。私が見ることができることから、それらもRAID上にスワップパーティションを作成するため、ほぼ「推奨」レイアウトです。

ただし、純粋に理論的な観点から見ると、スワップパーティションにRAID 1を使用すると、「通常の」パーティションに比べてメリットが少なくなる可能性があります。スワップパーティションのデータは揮発性が高いため、多くのデータが失われる可能性は低くなります。ディスク障害の場合。ただし、スワップパーティションに突然障害が発生すると、プロセスがクラッシュしたり、システムが再起動したりすることがあります。

RAID-0または2の個別の非RAIDパーティションを使用することは、パフォーマンスの観点からより理にかなっている場合とそうでない場合があります。パフォーマンスについて懸念がある場合は、いくつかのベンチマークを行う必要があります。

さらに、システムのRAM制限が厳しく、スワップが頻繁に使用される場合にのみ、これらすべてがパフォーマンスに影響を与える可能性があります。RAMを追加し、スワップを完全に削除することは、パフォーマンスと信頼性の両方の観点から、究極の解決策になります:)


RAID 1 交換することは、実際には非常に理にかなっています。
Eliah Kagan 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.