web-dev-qa-db-ja.com

LVM-on-RAID vs RAID10 vs RAID6

質問の精神で LVMミラーリングVS RAID1 もう少しプッシュしたいと思いました。

バックアップ/メディアサーバーのRAIDセットアップに必要な4台の同一のハードドライブ(1TBなど)があるとします。上部のLVMは、サイズ変更の現在のベストプラクティスのようですが、RAIDレイアウトについてはどうでしょうか。私の選択肢は次のようです:

  • LVM連結を使用した2x1TBRAID1セット
  • LVMストライピングを備えた2x1TBRAID1セット
  • 1x 2TB RAID10(ストライプ2x 1TB)にLVMを上にセット
  • 上部にLVMを備えた1x2TB RAID6(2x1TBパリティを備えたストライプ2x1TB)

RAID-on-LVMはあまりにもクレイジーに聞こえるので、調査する価値はありませんが、誰かがそれを使用するための良い事例を作ることができるかどうか興味があります。

これらのそれぞれは、次のシナリオでどのように機能しますか

  • I/O負荷は、低いが一定(ビデオストリーミングなど)と高いがバースト性(バックアップシステムなど)の組み合わせになります。
  • ドライブが予期せず死ぬ可能性が非常に高い
  • ドライブ1または2を一度にアップグレード(容量を増やし)したい (関連性がなくなりました)
  • 将来のある時点で、RAID1に別の2xHDDをLVMに追加したいと思うかもしれません。

これらのRAID構成のいずれかに関する推奨事項/経験は何ですか?

2
Andrew

md(ソフトウェアRAID)とmd(LVM)のRAID機能を混在させません。 KISSの精神では、スナップショット/サイズ変更のためにLVMを上に置いた純粋なmdを使用します。

4つのディスクを使用するRAID6は悪い考え(TM)です。 RAID 10とまったく同じスペースが得られますが、パフォーマンスは大幅に低下します(2つのパリティを計算し、ストライプサイズよりも小さい書き込みに対してリードモディファイライトペナルティに直面する必要があります)。

RAID 6は、高コストでわずかに優れた復元力を提供します(RAID 10ではミラーペアの1つのディスクが失敗する可能性があります)。それだけの価値はありません。

RAID 10は、このセットアップで可能な限り最高のパフォーマンスを提供します。

  • LVM連結を使用した2x1TBRAID1セット-同時I/Oパフォーマンスは、同じディスクペアをヒットするか、異なるディスクペアをヒットするかによって異なります。 I/Oをすべてのディスクに分散するRAID10によって解決されます。
  • LVMストライピングを使用した2x1TBRAID1セット-md RAID 10と同様のパフォーマンスが得られるはずですが、セットアップがより複雑になります。シンプルさが大好きです。

  • 上部にLVMを備えた1x2TB RAID6(2x1TBパリティを備えたストライプ2x1TB)-書き込みのパフォーマンスが低下し、ドライブが失われるとパフォーマンスが低下します。

パフォーマンス特性RAID10を想定します。これは、私の意見では、RAID 10にはすべての利点があり、シナリオに欠点がないためです。 HDDのペアと同等のパフォーマンスによって制限されます。つまり、1台のHDDの約2倍のデータを提供/書き込みできるようになります。ストリーミングの場合、労力(読み取りまたは書き込み)なしで1Gbpsリンクを飽和させることができるはずです。バースト性のあるデータの場合、最大150 IOpsでスタックします(7.2krpm SATAドライブを想定)。 RAID 10は、すべてのI/Oのすべてのドライブに負荷が分散されることを保証し(RAIDチャンクサイズに一致するストライドでアプリケーションアクセスデータを取得するのに不運な場合を除く)、RAID10の「遠い」レイアウトで同様のパフォーマンスが得られるはずです。アクセスしているファイルシステムのどの領域に関係なく。

ドライブが失われると、読み取りアクセス時間がわずかに失われます(影響を受けるミラーペアの「遠い」レイアウトの利点が失われます)。

ミラーリングされたドライブの別のペアでストレージを拡張すると、mdはデータの形状を変更して、新しいスペースにデータを再ストライプ化することができなくなります。バックアップ、アレイの再作成、および復元を行わない限り、事実上、RAID10 + RAID1のセットアップがあります。

3
Paweł Brodacki