web-dev-qa-db-ja.com

レプリケーションなしの分散ファイルシステム(例:glusterfs)

コントローラサーバーがあり、2つの24 SASファイルサーバーアレイ。各ファイルサーバーアレイは、それぞれ6つのドライブを持つ4つのRAIDZ2vdevを持つZFSプールとしてセットアップされます。

最終的には、コントローラーサーバーを2つのファイルサーバーの単一のマウントポイントとして使用できるようにしたいと考えています。主なアイデアは、エンドユーザーが2つのサーバーの合計ストレージ容量全体でデータにアクセス/バックアップするために、1つのコントローラーサーバーと1つのマウントポイントにアクセスするだけでよいということです。これにglusterfsを使用することを考えていましたが、これまでに見つけた情報は、冗長ストレージプールの生成に関するもののようです。このアプリケーションでは、glusterが分散ミラーRAID1として使用されていますが、これは別のレベルの不要な冗長性を作成するため、私のニーズにはあまり適合しません。

別々のコンピューターでホストされている2つのZFSプールから非冗長分散ファイルシステムを作成することをどのように提案しますか? glusterでこれを達成する方法はありますか、またはこれを達成するのにより適した別のNFSがある場合はありますか?私もサンバを検討しましたが、十分に安全かどうかはわかりません。私は、厳密な2FA認証を使用してコントローラーでsshのみを公開ホストするという見通しが本当に気に入りました。

4
kjskjk kjdksjk

分散ボリュームとストライプボリュームのどちらが必要かを選択する必要があります。

分散ボリュームは単純であり、各ノードに書き込まれたファイルを可能な限りバランスの取れた方法でハッシュします。ファイル自体には何の影響も与えず、ZFSの「ブリック」に無傷のファイルが表示されます。ストライプボリュームはファイルを切り取り、ノード間でチャンクとして分散します。これは、コンテンツがほぼ独占的に大きなファイル(ビデオ、ディスクイメージ、バックアップなど)である場合に望ましい構成です。

このような分散ボリュームを作成するコマンドは、あなたが述べたのと同じくらい簡単なので、これまでのところ、あなたはもうすぐです。

gluster volume create test-volume server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4

縞模様のボリュームがこのように作成されている間:

gluster volume create test-volume stripe 4 server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4

ただし、4つのストライプは、ファイルを取得するときに多くのオーバーヘッドを引き起こす可能性があります。彼らが本当に巨大なファイルを扱っている場合にのみ、それを行うでしょう。大きなディスクイメージなどでも機能する適切な妥協案として、分散ストライプボリュームをお勧めします。

gluster volume create test-volume stripe 2 server1:/exp1 server2:/exp2 server3:/exp3 server4:/exp4

このボリュームは2つのノードにストライプ化され、ストライプ化されたセットを別の2つのノードに分散します。

3
Spooler