web-dev-qa-db-ja.com

Glusterfs分散複製小さなファイルのパフォーマンス

Hypervサーバー(動的vhdx)仮想ディスク上のxfsパーティションの上にglusterfsを備えた4つの分散複製サーバーをセットアップしました。 NICは6x1Gbit(hypervでチーム化)です。私はそれをsambaを介してWindowsクライアントに共有します。私が遭遇した問題は、小さなファイル(読み取りと書き込み)がたくさんあるとパフォーマンスが非常に悪くなることです。10kのファイルがたくさんあると、転送速度は約300kbに​​なります(ネイティブクライアントでもそれほど速くはありません)。その問題の解決策はありますか?または私の構成が悪いですか?大きなファイルの転送は良好です(すべての帯域幅を利用)

2
piotrektt

GlusterFSを使用してWebアプリケーションをデプロイし、ユーザーがアップロードしたファイルの大規模なベースを複数のサーバー間で一度に共有しようとしました。適度な速度を得るためにおそらく4か月を費やしましたが、できませんでした。実際に試してみると、約25〜40%の速度向上のために微調整できますが、それでも十分な速度にはなりません。

正確な技術的な詳細を忘れていますが、GlusterFSプロトコルは、読み取り専用システムでも非常に冗長です。 Danilaが言ったように、小さなファイル共有が必要な場合は、glusterを介してNFSプロトコルを使用することをお勧めします。その大きな欠点は、NFSです。

検討すべきもう1つのオプションはCephです。その開発は迅速であり、最新のUbuntuカーネルで非常に使用可能です。

正直なところ、可能であれば共有FSを捨てることをお勧めします。後で感謝します。

4
Kyle

GlusterFSネイティブFuseクライアントは、大量の小さなファイルでひどいです。 GlusterFSでもNFSの使用を試みることができます。また、xfsパーティションは、このセットアップでネイティブEXT4よりも優れているとはまったく思いません。あなたはこの記事でいくつかのより多くの情報を読むことができます:

http://lwn.net/Articles/476263/

3
Danila Ladner