gpt4 book ai didi

elasticsearch - 为集群和嗅探正确设置 Elasticsearch publish_host 和 bind_host

转载 作者:行者123 更新时间:2023-12-03 01:30:13 25 4
gpt4 key购买 nike

我已经查看了这里的其他一些问题,但不知何故我无法解决我的问题。我在专用网络中有一个 Elasticsearch 集群(实际上它是一个 Docker 网络)。在同一个网络中,有一个与 ES 对话的应用程序,工作正常。

现在我想从外部访问和使用 ES 集群。我所有的机器都有一对 IP 地址——私有(private)的和公共(public)的,在公共(public)端只有端口 9200 是开放的。原则上这是可行的,我可以查询节点。

但是,我想使用嗅探,这就是它变得复杂的地方。节点配置为

network.bind_host=0.0.0.0
publish_host=internal.name[1,2,...]

因此,当我启用嗅探(使用 elasticsearch-py)时,我得到 Cannot connect to host internal_ip[1,2,...]:9200 ssl:None [No route to host]) .我了解客户获得了 publish_host 的列表s。

所以我可以改变 publish_host指向外部主机名/IP,但是我必须在外部 IP 上打开“内部”端口 9300。

有没有办法将 ES 配置为仅将内部名称或 IP 发布到集群中的其他节点,而将外部名称或 IP 发布到嗅探客户端?

最佳答案

当然,您能够以不同的方式配置 http 和传输模块。这不仅在容器中很常见,而且在您出于安全或性能考虑而想要使用不同的 NIC 时也很常见。

所有以 network.* 开头的配置选项都将应用于具有相同值的两个网络模块。使用 http.* 和/或 transport.* 选项,您将能够为每个网络模块定义不同的设置。

请查看传输模块 ( https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-transport.html ) 和 http 模块 ( https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-http.html ) 配置以获取更多详细信息。

关于elasticsearch - 为集群和嗅探正确设置 Elasticsearch publish_host 和 bind_host,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56399190/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com