Я установил сервер 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)
Как я понял, это означает, что этот новый узел (предположительно клиентский node) превратился в новый главный узел. И я не знаю из журнала, что он найден и подключается к любому другому узлу.
И сервер, и клиент запускаются на одной машине. 192.168.1.106:9200 доступны из браузера.
И я не могу найти никакой хорошей документации о конфигурации обнаружения. Где я могу узнать больше о конфигурациях ElasticSearch? А как настроить Java-клиент?