【问题标题】:camel elasticsearch access port 80骆驼elasticsearch访问80端口
【发布时间】:2015-09-05 10:08:09
【问题描述】:

我在运行 elasticsearch 的服务器上通过 80 代理了端口 9200。我有一条骆驼路线,需要将文档索引到该服务器。

camel-elasticsearch 插件是否支持它?即通过非 9300 端口访问弹性搜索?

我了解端口 9300 使用的是原生 elasticsearch 传输协议。

我在这里有什么选择?我可以通过 apache 代理 9300 吗?我不确定这是否有效。

或者 camel-elasticsearch 插件是否支持 http 传输?请帮忙。谢谢。

【问题讨论】:

    标签: elasticsearch apache-camel elasticsearch-plugin


    【解决方案1】:

    你指的端口,它HTTP port:

    http.port 绑定端口范围。默认为9200-9300

    http.publish_port HTTP 客户端与此节点通信时应使用的端口。当集群节点位于 代理或防火墙,并且 http.port 不能直接从 外。默认为通过 http.port 分配的实际端口。

    http.bind_host 绑定 HTTP 服务的主机地址。默认为http.host(如果设置)或network.bind_host

    http.publish_host 要发布以供 HTTP 客户端连接的主机地址。默认为http.host(如果设置)或 network.publish_host.

    http.host 用于将http.bind_hosthttp.publish_host 默认设置为http.hostnetwork.host

    所以你真的不需要代理,你可以让elasticsearch直接监听80端口。

    如果您已经有一个进程在端口 80 上运行;然后您可以代理到 9200 的连接(并将弹性搜索保留为默认值)。


    Java Transport Client ---> Apache HTTP Proxy(80) ----> ES (9300) [ 可以 我这样做?据我了解,Java 传输客户端使用非 http 协议? ]

    协议与端口无关。

    只需将80 传递给InetSocketTransportAddress。有关完整示例,请参阅 documentation

    【讨论】:

    • 我知道 9200 是 elasticsearch 的 http 端口,可以通过端口 80 进行代理。但我的问题是我是否要在外部使用 Elasticsearch Java API(通过端口 9300 使用传输客户端)防火墙,我有什么选择?
    • 我不知道你在这里问什么。如果您担心端口 9300 可能被您的 客户端 阻止,则将您的客户端配置为在端口 80 上查询;这是你想要做的事情并被卡住了吗?
    • Java Transport Client ---> Apache HTTP Proxy(80) ----> ES (9300) [ Can I do this? As I understand that Java Transport Client uses a non-http protocol? ]
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-15
    • 1970-01-01
    • 1970-01-01
    • 2011-12-05
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    相关资源
    最近更新 更多