web-dev-qa-db-ja.com

同じドライブセットでRAID0とRAID1を混在させる

間もなく、VMWareホストボックスとして存在するマシンの1つに新しいドライブのペアをインストールします(現時点ではVMWareサーバーを実行しています)。これらは、アクティブに使用されているときに高いI/O負荷を課す特定のVMのRAID0アレイとして使用されます。マシンは、テスト目的で使用されるかなり大きなVMを多数ホストします。

ドライブを500Gより小さくすることは(コスト的に)ほとんど意味がないため、結果として得られるアレイのサイズは1000Gになり、この目的に必要なサイズよりもはるかに大きくなります 、したがって、ディスクのチャンクをRAID1アレイとして使用してVMバックアップと参照コピーを保存する(既存のRAID1アレイのスペースを解放する)ことを検討しています。

に害はありますか:

  1. ドライブをたとえば5つのパーティションに分割する
  2. 1組のパーティションを初期RAID0アレイとして設定する
  3. この新しい物理ボリュームを使用してLVMグループを作成する
  4. 1組のパーティションを初期RAID1アレイとして設定する
  5. この新しい物理ボリュームを使用してLVMグループを作成する
  6. いずれかのボリュームグループを拡張する必要がある場合
    1. 空きパーティションペアに新しいR0/R1アレイを作成する
    2. 関連するLVMグループを拡張して、この新しい物理ボリュームを含める

上記のすべてが完全にうまくいくと思いますが、私が気付いていない問題があるかどうか疑問に思いました。たとえば、ドライブを複数のアレイに分割すると、I/Oを効果的にキャッシュするカーネルの機能に影響がありますか?

代わりに、最終的にすべてのドライブで単一のRAID10アレイを使用してマシンを再構築することを検討しましたが、それが必要な限りマシンをオフラインにすることはオプションではなく、I/O負荷を同じように分離することはできません。別々の配列を持つことはそうです。

1
David Spillett

これを行っても問題はありません。 RAID1 I/O負荷が制御されたメンテナンスウィンドウ中にのみ有効である限り、費用効果が高く、発生している問題を解決します。

ただし、大きなRAID1を使用すると、負荷のタイプによっては、より簡単で効率的なセットアップが提供される場合があります。

0
Oskar Duveborn

たとえば、ドライブを複数のアレイに分割すると、I/Oを効果的にキャッシュするカーネルの機能に影響がありますか?

キャッシュはブロックレベルで機能しているため、絶え間ないチャーンによって発生するキャッシュヒットを効果的に破棄します。 RAID用に同じドライブのパーティションを使用することはお勧めしません-セットアップ方法を学ぶためだけにそれを行っている場合を除きます(つまり、実験と学習のためであり、一時的なものです)。実稼働マシンでこれを行ったことを後悔するでしょう。

代わりに、最終的にすべてのドライブ上で単一のRAID10アレイを使用してマシンを再構築することを検討しました...

RAID 10のメリットについては、SFの他の場所で説明されています。

...しかし、マシンをオフラインにすることはオプションではなく、個別のアレイを持つ場合と同じようにI/O負荷を分離することはできません。

時々、それは「痛みも利益もない」です。率直に言って、これはあなたの最良の選択肢です。 RAIDアレンジメントが起動可能であることを確認してください。しかし、4ドライブのセットアップ(最小)では、適切な保護と適切なパフォーマンスが得られます。それ以外の場合、ドライブが2つまたは3つしかない場合は、RAID1(ミラー)のみを実行してください。 3ドライブ構成の場合は、ドライブ3をホットスペアにすることを検討してください。

0
Avery Payne