最初の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 peer statusを実行すると、他の接続されたホストとの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 Uuid:f6f326eb-0181-4f99-8072-f27652dab064状態:ピアー(クラスター内)
ただし、192.168.0.12からは、同じコマンドで3つのホストも表示され、192.168.0.11もその一部です。つまり.
Number of Peers: 3
Hostname: 192.168.0.11
Port: 24007
Uuid: 09a3bacb-558d-4257-8a85-ca8b56e219f2
State: Peer in Cluster (Connected)
Hostname: 192.168.0.13
Uuid: 3b5c188e-9be8-4d0f-a7bd-b738a88f2199
State: Peer in Cluster (Connected)
Hostname: 192.168.0.14
Uuid: f6f326eb-0181-4f99-8072-f27652dab064
State: Peer in Cluster (Connected)
したがって、192.168.0.11は間違いなくクラスタの一部です。
問題は、glusterコマンドを実行すると、なぜ最初のglusterサーバーにボリュームを作成できないのかということです。これは正常な動作ですか、それとも何らかのバグですか?
ピア127.0.0.1の接続されていないソケットに関する不明瞭なエラーメッセージが表示されました。
[2013-08-16 00:36:56.765755] W [socket.c:1494:__ socket_proto_state_machine] 0-socket.management:ソケットからの読み取りに失敗しました。エラー(トランスポートエンドポイントが接続されていません)、ピア(127.0.0.1:1022)
私が抱えていた問題はNATによるものでした。 NATデバイスの背後にあるglusterサーバーを作成し、パブリックIPを使用して名前を解決しようとしていました。これはローカルマシンでは正しく機能しません。
私が持っていたのは、各ノードで次のようなものでした。
含むhostsファイル
192.168.0.11 gluster1
192.168.0.12 gluster2
192.168.0.13 gluster3
192.168.0.14 gluster4
修正は、信頼できるピアを最初に削除することでした
Sudo gluster peer detach gluster2
Sudo gluster peer detach gluster3
Sudo gluster peer detach gluster4
次に、各マシンのホストファイルを次のように変更します。
# Gluster1
127.0.0.1 gluster1
192.168.0.12 gluster2
192.168.0.13 gluster3
192.168.0.14 gluster4
# Gluster2
192.168.0.11 gluster1
127.0.0.1 gluster2
192.168.0.13 gluster3
192.168.0.14 gluster4
等
次にピアプローブを行い、最後にボリュームを作成します。ボリュームは成功しました。
この場合、IPアドレス(パブリックアドレス)を使用するとうまくいくとは思えません。 NATの背後にあるプライベートアドレスを使用する場合に機能します。私の場合、各サーバーはAWSクラウドのNATの背後にありました。
次の形式を使用して、レプリカ数を4つのノードとして明示的に定義してみてください:-
gluster volume create NEW-VOLNAME [stripe COUNT] [replica COUNT] [transport <tcp | rdma>] NEW-BRICK ...
この純粋なレプリカでストライプがないと思いますか?
これを192.168.0.11から試してください:-
最初にすべてを切り離します。
Sudo gluster peer detach 192.168.0.12
Sudo gluster peer detach 192.168.0.13
Sudo gluster peer detach 192.168.0.14
次にこの形式で再度追加します
gluster volume create gv0 replica 4 transport tcp 192.168.0.11:/export/brick1 192.168.0.12:/export/brick1 192.168.0.13:/export/brick1 192.168.0.14:/export/brick1
注 4ノードのレプリカセットを明示的に定義しました。また、トランスポートをtcpで明示的に定義しました。
レプリカセット内の2つのデバイス間でストライプ化する場合は、次のようなものを使用します。-
gluster volume create gv0 stripe 2 replica 2 transport tcp 192.168.0.11:/export/brick1 192.168.0.12:/export/brick1 192.168.0.13:/export/brick1 192.168.0.14:/export/brick1
それを続けて、私は最近glusterを発見しました。私はこの分散型ファイルシステムのイデオロギーに夢中です。本物の芸術作品です。
私はglusterを使用して、KVM仮想データストアにHA冗長性を提供しています。魔法のもの