私が実行しているElasticSearchサーバーをインストールしました:
$ ./elasticsearch -f
{0.18.2}[11698]: initializing ...
loaded [], sites []
{0.18.2}[11698]: initialized
{0.18.2}[11698]: starting ...
bound_address {inet[/0:0:0:0:0:0:0:0:9300]}, publish_address {inet[/192.168.1.106:9300]}
new_master [Stingray][ocw4qPdmSfWuD9pUxHoN1Q][inet[/192.168.1.106:9300]], reason: zen-disco-join (elected_as_master)
elasticsearch/ocw4qPdmSfWuD9pUxHoN1Q
recovered [0] indices into cluster_state
bound_address {inet[/0:0:0:0:0:0:0:0:9200]}, publish_address {inet[/192.168.1.106:9200]}
{0.18.2}[11698]: started
このサーバーに接続するように Java クライアントを構成するにはどうすればよいですか? 私はちょうど持っています:
node.client=true
しかし、接続しようとした後、私は受け取っています:
org.elasticsearch.discovery.MasterNotDiscoveredException:
at org.elasticsearch.action.support.master.TransportMasterNodeOperationAction$3.onTimeout(TransportMasterNodeOperationAction.java:162)
Java クライアントを次のように構成している場合:
node.data=false
次のログを取得しています。
INFO main node:internalInfo:93 - [Stark, Tony] {0.18.2}[13008]: starting ...
INFO main transport:internalInfo:93 - [Stark, Tony] bound_address {inet[/0:0:0:0:0:0:0:0:9301]}, publish_address {inet[/192.168.1.106:9301]}
INFO elasticsearch[Stark, Tony]clusterService#updateTask-pool-13-thread-1 service:internalInfo:93 - [Stark, Tony] new_master [Stark, Tony][WkNn96hgTkWXRnsR0EOZjA][inet[/192.168.1.106:9301]]{data=false}, reason: zen-disco-join (elected_as_master)
私が理解したように、これは、この新しいノード (クライアント ノードであるはず) がそれ自体を新しいマスター ノードにしたことを意味します。そして、それが見つかって他のノードに接続したことをログに記録しません。
サーバーとクライアントの両方が同じマシンで開始されます。192.168.1.106:9200 はブラウザからアクセスできます。
また、検出構成に関する適切なドキュメントが見つかりません。ElasticSearch 構成の詳細はどこで確認できますか? また、Java クライアントを構成する方法は?