タグ付けされた質問 「glusterfs」

GlusterFSは、イーサネットまたはInfiniband RDMA相互接続を介して実行されるスケールアウトNASファイルシステムです。GlusterFSは現在Red Hatが所有しています。

1
NASパフォーマンス:NFS vs Samba vs GlusterFS
小規模なWebサーバーファーム用に新しい共有ストレージインフラストラクチャを計画しています。そのため、多くのNASファイルシステムで多くのテストを実行しました。そうすることによって、私はいくつかの予期しない結果を得て、ここの誰かがこれを確認できるかどうか知りたいです。 要するに、Sambaは小さなファイルの書き込みに関してNFSやGlusterFSよりも非常に高速です。 ここで私がしたこと:私は、小さなファイルの書き込みパフォーマンスを比較するために、多くのファイルで単純な「rsyncベンチマーク」を実行しました。簡単に再現するために、現在のワードプレスtar.gzのコンテンツを使用して、今すぐ再実行しました。 GlusterFS複製2:32-35秒、高CPU負荷 GlusterFSシングル:14-16秒、高CPU負荷 GlusterFS + NFSクライアント:16-19秒、高いCPU負荷 NFSカーネルサーバー+ NFSクライアント(同期):32-36秒、非常に低いCPU負荷 NFSカーネルサーバー+ NFSクライアント(非同期):3〜4秒、非常に低いCPU負荷 Samba:4〜7秒、中程度のCPU負荷 ダイレクトディスク:<1秒 私は絶対にサンバの第一人者ではありません(私の最後の連絡先はsamba 2.xだったと思います)ので、ここでは何も最適化しませんでした。私が「sync always = yes」を追加した唯一のものは、書き込み後に同期を強制することになっています(ただし、これらの結果は表示されます)。それがなければ、テストは約1〜2秒速くなります。 すべてのテストは同じマシンで実行されるため(NASエクスポートの自己マウント)、ネットワーク遅延は発生しません-純粋なプロトコルパフォーマンス。 サイドノード:ファイルシステムとしてext4とxfsを使用しました。上記の結果はext4のものです。xfsのパフォーマンスは最大40%(短時間)向上しました。マシンはEC2 m1.smallインスタンスです。NASエクスポートはEBSボリューム上にあり、ソース(抽出されたtar)は一時ディスク上にあります。 それでは、Sambaがこれほど高速である理由を説明できますか? また:同期モードでは、カーネルサーバーでのNFSパフォーマンスは恐ろしい(GlusterFS NFSサーバーよりも優れている)と想定されていますか?これを調整する方法はありますか? ありがとう、L

2
Dockerボリュームをglusterfsに保存することをお勧めしますか?
現在、サーバーとアプリの一部をcoreOS環境に移行することを考えています。ここで見た問題の1つは、コンテナーを新しいマシンに移動するときにcoreOSがDockerボリュームを処理しないため、永続データの管理です。いくつかの調査の後、glusterFSを見つけました。これは、すべての問題を解決できるクラスターファイルシステムであると主張しています。 私の現在のアイデアは次のとおり/mnt/glusterです。たとえば、各coreOSマシンで特権コンテナーとして実行され、ストレージを公開するglusterFSコンテナーがあります。私の中でDockerfileの私はすべてのボリュームがこのパスにマウントする必要があることを指定します。 次に検討したのは、どのコンテナが独自のボリュームを取得し、どのコンテナがボリュームを共有するかです。たとえば、すべてのmysqlコンテナは複製を自分で処理できるため、独自のボリュームを取得します。それをいじりたくありません。同じWebサイトにサービスを提供するWebサーバーは、「ユーザーがアップロードした画像」などのデータにデータを複製できないため、同じボリュームを適切に使用します。 誰かがこのようなことを試しましたか、私が見逃したものはありますか?

4
Systemd:別のユニットが本当に起動した後にユニットを起動します
私の特定のケースではremote-fs、すべてがglusterfs完全に起動した後にユニットを起動します。 私のsystemdファイル: glusterfs ターゲット: node04:/usr/lib/systemd/system # cat glusterfsd.service [Unit] Description=GlusterFS brick processes (stopping only) After=network.target glusterd.service [Service] Type=oneshot ExecStart=/bin/true RemainAfterExit=yes ExecStop=/bin/sh -c "/bin/killall --wait glusterfsd || /bin/true" ExecReload=/bin/sh -c "/bin/killall -HUP glusterfsd || /bin/true" [Install] WantedBy=multi-user.target remote-fs ターゲット: node04:/usr/lib/systemd/system # cat remote-fs.target [Unit] Description=Remote File Systems Documentation=man:systemd.special(7) Requires=glusterfsd.service After=glusterfsd.service remote-fs-pre.target …
20 nfs  glusterfs  systemd 

3
150 TBと成長していますが、成長方法は?
私のグループには現在、2台の大型ストレージサーバーがあり、どちらもNASがdebian linuxを実行しています。1つ目は、数年前のオールインワン24ディスク(SATA)サーバーです。2つのハードウェアRAIDが設定されており、それらの上にLVMがあります。2番目のサーバーは、4つのエンクロージャーに分割された64個のディスクで、それぞれが外部SASを介して接続されたハードウェアRAID 6です。XFSとその上のLVMを使用して、100 TBの使用可能なストレージを作成します。これらはすべてうまく機能しますが、これらのシステムよりも成長しています。そのようなサーバーを2つ構築し、まだ成長しているので、将来の成長、バックアップオプション、ディスク障害下でより良い動作(より大きなファイルシステムのチェックには1日以上かかる)に関してより柔軟なものを構築できるようにしたい重度の並行環境で稼働します(小さなコンピュータークラスターを考えてください)。システム管理サポートはありませんが、 そのため、将来の成長と柔軟な構成を可能にする、比較的低コストで許容可能なパフォーマンスストレージソリューションを求めています(異なる動作特性を持つ異なるプールを備えたZFSを考えてください)。私たちはおそらく単一のNASの領域外にいるでしょう。ZFS(たとえばopenindiana)またはサーバーごとのbtrfsと、その上で実行するglusterfsの組み合わせについて考えてきました。私たちがそれに対して評価しているのは、単に弾丸をかみ、Isilonまたは3Parストレージソリューションに投資することです。 提案や経験は大歓迎です。

1
AnsibleでGlusterFSボリュームを作成してマウントする
GlusterFSを使用して、4台のマシンでボリュームを作成およびマウントしています。例えば言って、マシンが呼び出されmachine1、machine2、machine3とmachine4。 私の仲間はすでに首尾よく調査されています。 次のコマンドを使用してボリュームを作成しました。 sudo gluster volume create ssl replica 2 transport tcp machine1:/srv/gluster/ssl machine2:/srv/gluster/ssl machine3:/srv/gluster/ssl machine4:/srv/gluster/ssl force 次に、ボリュームを開始します。 sudo gluster volume start ssl /myproject/ssl次のコマンドを使用してディレクトリをマウントしました。 sudo mount -t glusterfs machine1:/ssl /myproject/ssl 各マシンにマウントすると、すべてが期待どおりに機能し、/myproject/sslディレクトリにはすべてのマシンで共有されるデータが含まれます。 問題は、一体どうやってこれをAnsibleの方法でやるのかということです。 これら2つのコマンドをAnsibleの方法で実行しようとする私の試みを次に示します。 - name: Configure Gluster volume. gluster_volume: state: present name: "{{ gluster.brick_name }}" brick: "{{ gluster.brick_dir }}" replicas: …

4
ZFSクラスター化ファイルシステムは可能ですか?
ZFSクラスターを作成することはできますか?それとも、GlusterFSが管理するUFSフォーマットのプールを使用して、ZFSの(少なくとも私にとっては)ugいルートに行く必要がありますか? アイデアは、ZFSが問題なく処理できるマルチペタバイトの分散ストアに拡張できるかどうかを確認することです。 ポインター、ブログ、投稿はありますか?

4
Glusterは正確に何をしますか?
私は過去2日間glusterで遊んでいて、ここと彼らの質問システムで質問をしていました。私は本当にいくつかのことを理解していません。次のようなことを言っている人がいます サーバー間でレプリケートされたブリックを設定します(3のみを使用しているため、レプリケートされた方が安全です)。各サーバーは、他のすべてのサーバーのファイルを「ローカル」として認識します他のサーバー。 または Glusterは、ボリューム(ブリック)全体でファイルの同期を維持し、1つのサーバーがオフラインになっていることによる不整合を処理する「自己修復」機能を備えています。 サーバーからクライアントにリモートボリュームをマウントするので、glusterはサーバーノードの障害をどのように処理しますか?ボリュームをマウントしたクライアント上のフォルダーを試したところからアクセスできなくなり、umountを使用してブロックを解除する必要があります。その後、サーバーからのコンテンツはありません。 これは、基本的には説明に含まれていないものです。サーバーノードに障害が発生した場合、一体型またはrsyncのようにコンテンツを実際に複製できるかどうかはどうなりますか。

5
glusterfsボリュームを監視する方法
Glusterfsは優れた分散ファイルシステムですが、整合性を監視する方法はほとんどありません。サーバーが行き来する可能性があり、レンガが古くなったり失敗したりする可能性があります。 最近、すべてが機能しているように見えたときに奇妙な失敗がありましたが、ボリュームから1つのレンガが落ちました(純粋な偶然によって発見されました)。 GlusterFS 3.2ボリュームの正常性状態を知らせるシンプルで信頼できる方法(cronスクリプト?)はありますか?

5
glusterfsの上でmysqldを実行できますか?
私は最近glusterfsで遊んでいます。 私が試してみたいのは、DRBDの上でMySQLを実行できるのと同様の方法で、glusterfsの上でmysqldを実行することです。 私はMySQLレプリケーションと、このアプローチの代わりにそれを使用する利点に精通しており、MongoDBおよび他のNoSQLソリューションも知っています。 ただし、MySQLをそのままにして、基礎となるファイルシステムを複製できれば、これから予定しているいくつかの特定のプロジェクトに対する簡単なソリューションになります。 これは可能ですか?それがどこにある場合、どのように見つけることができますか?

4
GlusterFSはパスのない脳を分割しますが、それはどういう意味ですか?
私はちょうどglusterfsボリュームのステータスをチェックしていましたが、パスのないスプリットブレインエントリを持つものがあります: # gluster volume heal private_uploads info Brick server01:/var/lib/glusterfs/brick01/uploads/ <gfid:4c0edafb-0c28-427c-a162-e530280b3396> - Is in split-brain <gfid:42d62418-1be9-4f96-96c4-268230316869> - Is in split-brain Number of entries: 2 Brick server02:/var/lib/glusterfs/brick01/uploads/ <gfid:42d62418-1be9-4f96-96c4-268230316869> - Is in split-brain <gfid:4c0edafb-0c28-427c-a162-e530280b3396> - Is in split-brain Number of entries: 2 どういう意味ですか?どうすれば修正できますか? GlusterFS 3.5.9を実行しています: # gluster --version glusterfs 3.5.9 built on Mar …
11 glusterfs 

2
GlusterFSとWindowsでSPOFSを回避する
処理機能に使用するGlusterFSクラスターがあります。Windowsを統合したいのですが、GlusterFSボリュームを提供するSambaサーバーである単一障害点を回避する方法を理解するのに問題があります。 ファイルフローは次のように機能します。 ファイルはLinux処理ノードによって読み取られます。 ファイルが処理されます。 結果(小さくすることもかなり大きくなることもあります)は、完了時にGlusterFSボリュームに書き戻されます。 結果をデータベースに書き込むことも、さまざまなサイズのファイルをいくつか含めることもできます。 処理ノードは、キューおよびGOTO 1から別のジョブをピックアップします。 Glusterは分散ボリュームとインスタントレプリケーションを提供するので素晴らしいです。耐災害性がいいです!私たちはそれが好き。 ただし、WindowsにはネイティブのGlusterFSクライアントがないため、Windowsベースの処理ノードが同様に復元力のある方法でファイルストアと対話するための何らかの方法が必要です。GlusterFSドキュメント状態のWindowsへのアクセスを提供する方法がマウントされGlusterFSのボリュームの上にSambaサーバを設定することであること。これは、次のようなファイルフローになります。 それは私にとって単一障害点のように見えます。 1つのオプションはSambaをクラスター化することですが、現在は不安定なコードに基づいているため、実行されていません。 だから私は別の方法を探しています。 使用するデータの種類に関するいくつかの重要な詳細: 元のファイルサイズは、数KBから数十GBまでの範囲です。 処理されるファイルサイズは、数KBから1〜2 GBです。 .zipや.tarなどのアーカイブファイルを掘り下げるなどの特定のプロセスでは、含まれているファイルがファイルストアにインポートされるときに、さらに多くの書き込みが発生する可能性があります。 ファイル数は数千万に達する可能性があります。 このワークロードは、「静的ワークユニットサイズ」のHadoopセットアップでは機能しません。同様に、S3スタイルのオブジェクトストアを評価しましたが、不足していることがわかりました。 私たちのアプリケーションはRubyでカスタム作成されており、WindowsノードにCygwin環境があります。これは私たちを助けるかもしれません。 私が検討している1つのオプションは、GlusterFSボリュームがマウントされているサーバーのクラスター上の単純なHTTPサービスです。Glusterで実行しているのは基本的にGET / PUT操作だけなので、HTTPベースのファイル転送メソッドに簡単に転送できるようです。それらをロードバランサーペアの背後に配置すると、WindowsノードはHTTPでそれらの小さな青いハートのコンテンツにPUTできます。 私が知らないのは、GlusterFSの一貫性がどのように維持されるかです。HTTPプロキシレイヤーは、書き込みが完了したことを処理ノードが報告してから、実際にGlusterFSボリュームに表示されるまでの間に十分な待機時間を導入します。それを見つける。direct-io-mode=enablemount-option を使用すると効果があると確信していますが、それで十分かどうかはわかりません。一貫性を向上させるために他に何をすべきですか? または、私は完全に別の方法を追求すべきですか? トムが下で指摘したように、NFSは別のオプションです。だから私はテストを実行しました。上記のファイルには、保持する必要があるクライアント提供の名前があり、どの言語でも使用できるため、ファイル名を保持する必要があります。だから私はこれらのファイルでディレクトリを構築しました: NFSクライアントがインストールされているServer 2008 R2システムからマウントすると、次のようなディレクトリリストが表示されます。 明らかに、Unicodeは保持されていません。したがって、NFSは私にとってうまくいきません。

2
このGlusterボリュームを作成できないのはなぜですか?
最初のGluster 3.4インストールをセットアップしていますが、分散複製ボリュームを作成するまでは問題ありません。 私は4つのサーバー192.168.0.11、192.168.0.12、192.168.0.13と192.168.0.14を持っています。 192.168.0.11から私は実行しました: gluster peer probe 192.168.0.12 gluster peer probe 192.168.0.13 gluster peer probe 192.168.0.14 各サーバーの/ export / brick1にストレージボリュームがマウントされている その後、192.168.0.11で実行しました gluster volume create gv0 replica2 192.168.0.11:/export/brick1 192.168.0.12:/export/brick1 192.168.0.13:/export/brick1 192.168.0.14:/export/brick1 しかし、私はエラーを受け取ります: volume create: gv0: failed: Host 192.168.0.11 is not in 'Peer in Cluster' state glusterピアステータスを実行すると、他の接続されたホストとの3つのピアが表示されます。つまり、ピアの数:3 ホスト名:192.168.0.12ポート:24007 Uuid:bcea6044-f841-4465-88e4-f76a0c8d5198状態:クラスター内のピア(接続済み) ホスト名:192.168.0.13ポート:24007 Uuid:3b5c188e-9be8-4d0f-a7bd-b738a88f2199状態:クラスター内のピア(接続済み) ホスト名:192.168.0.14ポート:24007 …

4
GlusterFSはウェブサーバーの同期を維持するのに適した選択肢ですか?
私は2つのWebサーバーを持っていますが、途中でサーバーを追加する必要がある可能性があります。現在、lsyncd + csync2を使用してこれらのサーバーを同期させています。すべてのファイルが両方のサーバー上にあるため(ファイルをローカルで開くためにネットワークアクセスは必要ありません)、パフォーマンスは優れていますが、それ以外の場合はそれほどうまくいきません。 この1つの例は、サーバー1上のファイルを削除し、すぐに同じ名前の新しいファイルをサーバー1にアップロードする場合です。その後、ファイルはサーバー2から削除され、サーバー2がサーバー1に削除イベントを送信して「更新サークル」を完了すると、サーバー1に新しくアップロードされたファイルが削除されます。 サーバーを同期させるためのより良い方法があるはずだと私は思わずにはいられません。私はGlusterFSを見てきましたが、すべてのファイルがすべてのサーバーに複製される設定はお勧めできません。ただし、私はこれらのサーバーでDrupalのようなCMSシステムを実行しています。このようなCMSシステムは多くの場合、かなりの数のファイルを開きますが、これらのファイルを取得するにはネットワークトラフィックが多すぎると、リクエストの速度が低下するのではないかと心配しています。 lsyncd + csync2を、すべてのファイルをすべてのノードにレプリケートするように設定されたGlusterFSに置き換えることを検討するのは良い考えですか、それとも悪い考えですか?

2
分散ファイルシステム上のデータを含むコンテナー化されたPostgreSQL
誰かが実際に何らかの形で分散ファイルシステム-GlusterFSまたはそれ以外のもの-の運用環境のコンテナーでPostgreSQLを実行しているかどうか知りたいです。 私は現在Mesos / Marathonを実行しています。PostgreSQLノードに障害が発生した場合、Marathonは他のノードでPostgreSQLの別のインスタンスを起動するだけで、適切に実行されると(サービスの検出とアプリケーションによるデータベース接続の損失からの回復)、究極のフォールトトレランスが実現されます。 私はPostgreSQLにログ配布やホットスタンバイバックアップなどの独自のHAソリューションがあることを知っていますが、マスターからスレーブに切り替えるタイミング、適切に行う方法などの問題を解決する必要があります。 では、GlusterFSまたは同様の製品のPostgreSQLをどのように実行しますか?もしそうなら、それは安定していますか?パフォーマンスはどうですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.