首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >elastic4s与亚马逊Elasticsearch服务

elastic4s与亚马逊Elasticsearch服务
EN

Stack Overflow用户
提问于 2015-11-07 12:02:08
回答 1查看 819关注 0票数 2

我在我的scala项目中使用elastic4s与ElasticSearch通信。为了开发,我启动了一个本地节点,一切都很好。在生产方面,我想使用服务。我已经配置了该服务,并允许通过我的ec2实例的ip访问它。我可以通过ssh到ec2并执行以下操作来验证它是否有效:

代码语言:javascript
复制
curl search-blabla-blabla.us-east-1.es.amazonaws.com/_cluster/health

但是,我很难将elastic4s连接到那个ES实例。我在努力:

代码语言:javascript
复制
ElasticClient.remote("search-blabla-blabla.us-east-1.es.amazonaws.com", 9300)

其结果是:

代码语言:javascript
复制
org.elasticsearch.client.transport.NoNodeAvailableException: None of the configured nodes are available: []

读取文档后,elastic4s似乎只能通过TCP [1]进行连接,而不支持TCP[2]:该服务支持端口80上的HTTP,但不支持TCP传输。

有人能证实elastic4s和Amazon真的不一起工作吗?因为这意味着我必须重写我所有的ES代码。

EN

回答 1

Stack Overflow用户

发布于 2015-11-12 10:34:50

Amazon的Elasticsearch服务不支持TCP,只支持HTTP协议。Elastic4s只使用TCP,Elasticsearch (Elastic4s是Java的包装器)也使用TCP。

如果要使用HTTP,则需要手工编写查询并使用常规HTTP客户端,或者使用支持HTTP协议的Elasticsearch客户端。

更新:

从5.2版开始,elastic4s支持HTTP和TCP。这是目前的实验。https://github.com/sksamuel/elastic4s#quick-start

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33582538

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档