web-dev-qa-db-ja.com

JBOD全体の障害を許容するようにraidz3ZFS vdevを配置しますか?

非常に大きな1PBzpoolを構築するとします。内部にHBAを備えたヘッドユニット(おそらく4ポートLSI SASカード))と、おそらく7つの45ドライブJBODをヘッドユニットに接続します。

Raidz3でこれを行う基本的な方法は、21の異なる15ドライブraidz3 vdev(7つのJBODのそれぞれに3つの15ドライブvdev)を作成し、これらの21のraidz3vdevすべてからプールを作成することです。

これは問題なく機能します。

ここでの問題は、何らかの理由で1つのvdevを失うと、プール全体が失われることです。つまり、3つのvdevが失われるため、JBOD全体を失うことは絶対にありません。しかし、メーリングリストのスレッドで、誰かがディスクを整理する方法を不可解にほのめかして、実際にJBOD全体を失う可能性がありました。彼らは言った:

「DellR720ヘッドユニットに加えて、2つのLSIにデュアルパスされた多数のDell MD1200 JBODを使用SASスイッチ...トリプルパリティを実行し、vdevメンバーシップは次のように設定されています。最大3つのJBODを失っても、機能し続ける可能性があります(JBODごとに1つのvdevメンバーディスク)。」

...そして私は彼らがここで何を言っているのかよくわかりません。 I think彼らが言っているのは、vdevを(1つのHBA上のすべての連続した15(または12など)ディスク)にする代わりに、実際にはvdevのパリティドライブを他のディスクに分割するということですJBOD。jbodを失う可能性があり、そのvdevをカバーするために他の場所にN-3ドライブがまだあります...

か何か...

2つの質問:

  1. 誰かがこれのレシピがどのように見えるか知っていますか

  2. SASスイッチが本当に必要なほど複雑で、複雑なHBA <-> JBDケーブルを使用してセットアップすることはできませんか?

ありがとう。

2
user227963

メーリングリストで読んだJBODの復元力の説明は、おそらくRAIDZ3 vdevとエンクロージャーのセットのようなものです... RAIDZ3(5 + 3)ごとに8つのディスク、および5(または8?)エンクロージャーと言います。 vdevは、各エンクロージャーの1つのディスクで構成されていました。


しかし、realzの場合、ある程度の高可用性がなければ、1PBのストレージを実行することはできません...

ヘッドノードごとにデュアルHBAを備え、冗長なカスケード接続されたSASケーブル接続を備えた適切なHAクラスターのリファレンスデザインをいくつか示します。これをデザインする場合は、ZFSを計画しますRAIDZ(1/2/3)の代わりにmirrorデプロイメント。

RAIDZアレイの制限は、ほとんどの本番環境で大きな問題になると思います。 拡張性の欠如パフォーマンスの低下複雑な計画 など 障害回復の困難さ

私はZFSミラーと可能な限り最大のエンクロージャー(例: 60-disk または 70-disk units)、SASディスクとSupermicro機器を避けてください;)

それを超えて、 高品質のJBODユニット は、内部冗長性、デュアルパスバックプレーン、および通常は失敗しないミッドプレーンアセンブリを備えているという点で非常に回復力があります。ほとんどのコンポーネントはホットスワップ可能です。エンクロージャーについてはあまり気にせず、ケーブル、コントローラー、プールの設計についてはもっと気にします。

mustがRAIDZ(1/2/3)を使用する必要がある場合は、必要に応じて構成し、各JBODにスペアディスクを保持します。それらをグローバルスペアとしても構成します。

デュアルノード: enter image description here


単一ノード: enter image description here

5
ewwhite