0

我正在使用骆驼弹性搜索组件:http ://camel.apache.org/elasticsearch.html

根据文档,我的假设是弹性搜索服务器必须与正在运行的骆驼路由在同一网络上才能工作。这个对吗?

澄清一下,唯一可用的连接属性是“clustername”。我假设这是通过通过多播在网络中搜索集群来发现的。

我的代码需要连接到远程服务。这是不可能的吗?

一般来说,我对弹性搜索相当陌生。

4

1 回答 1

1

我在弹性搜索的自动发现方面遇到了类似的问题。我有一条骆驼路由试图索引一些交换,但集群位于另一个子网中,因此没有被发现。

使用 ES 的 java api,可以使用指定 IP 地址的 TransportClient 连接到远程集群。我目前无法访问代码,但 ES 文档中的 Java API 提供了干净的示例代码。例如,您可以从路由中的 bean 中建立这样的连接。

我还向 Camel 提交了一个补丁,为路由添加了一个 ip 参数,然后应该使用这样的 TransportClient 连接到远程集群。文档指出应该与 Camel 2.12 一起提供

希望这可以帮助。

于 2013-08-21T18:08:22.107 回答