我正在尝试将ElasticSearch模块(https://github.com/cleverage/play2-elasticsearch)与我的Play 2应用程序一起使用。在自述文件中,它说我应该将以下内容添加到我的application.conf:
## define local mode or not
elasticsearch.local=false
## list clients
elasticsearch.client="192.168.0.46:9300"
# ex : elasticsearch.client="192.168.0.46:9300,192.168.0.47:9300"
什么是本地模式?我的客户端URL应该是什么?我找不到有关这些选项应该是什么的任何信息。使用我当前的选项,我得到一个NoNodeAvailableException。
有人建议:
elasticsearch.local=false elasticsearch.client=mynode1:9200,mynode2:9200
但mynode1和mynode2是什么?它不适用于我的应用程序。有人可以帮忙吗?感谢
答案 0 :(得分:1)
什么是本地模式?
如果elaticsearch.local = true,则在您的应用程序中启动弹性搜索节点(嵌入式)
我的客户端网址应该是什么?
这是您的主机:端口,但端口是您的elasticsearch节点上的tcp传输定义。 默认情况下,端口从9300(http://www.elasticsearch.org/guide/reference/modules/transport.html)
开始
我找不到有关这些选项应该是什么的任何信息。使用我当前的选项,我得到NoNodeAvailableException。
我认为你的端口号有问题。
答案 1 :(得分:0)
mynode1和mynode2是elasticsearch节点。
您是否正在运行任何Elasticsearch节点? 在哪个IP地址?
您可以尝试使用curl在这些节点上进行连接,例如:
curl localhost:9200
或者
curl YOURIPADDRESS:9200
如果其中一个成功,则使用YOURIPADDRESS配置您的播放应用程序:9300,如Nicolas Boire之前所写。 如果没有人成功,请检查您是否已安装Elasticsearch并在之前启动它。
HTH
答案 2 :(得分:0)
我遇到了同样的问题,请确保您尊重表格中的版本要求:https://github.com/cleverage/play2-elasticsearch
一开始,我设置了最新版本的插件0.8.1
,但我的ElasticSearch版本为1.0.2
。
通过使用版本0.9.13
启动ES,它可以工作。