ElasticSearch中的bind_host和publish_host有什么区别?

从这个文档的网络设置中,我知道publish_host是群集中的其他节点将与之通信的主机。但我不明白bind_host的功能,这意味着:

network.bind_host设置允许控制不同的网络组件将绑定的主机。默认情况下,绑定主机将是anyLocalAddress(通常为0.0.0.0或者:: 0)。

network.host将设置network.bind_hostnetwork.publish_host为相同的值。

所以我想知道为什么需要设置network.bind_host以及是否可以将network.bind_hostnetwork.publish_host设置为不同的值?

---------------------

以下设置应该可以做到这一点。它接受来自任何IP的连接(绑定),并将其自身IP配置为第一个可用网络接口中的第一个non_loopback。

network.bind_host: "0.0.0.0"
network.publish_host: _non_loopback:ipv4_

要查看更多选项,请查看文档文档链接

-----------------------------------------------------

可以将它们设置为不同的值,并且在某些情况下非常有用。这是我的用法:

我在一个数据中心有一个本地网络,我运行由不同节点组成的elasticsearch集群。这意味着每个elasticsearch机器都有两个IP地址,一个用于从外部机器到达,另一个用于本地连接到同一网络中的其他机器。

内部ip(eth1)用于让elasticsearch的不同节点相互通信,发现等,而外部ip地址(eth0)是​​我的web应用程序在另一个网络中发出请求的地址。

所以简单地说,bind_host(我的例子中的ip,与默认值0.0.0.0相同,用于连接所有接口)是elasticsearch侦听的地方,publish_host(本例中为internal ip)是elasticsearch与其他集群组件进行通信的地方。

这样,我的Web应用程序位于另一个网络中,可以从bind_host地址访问ES群集,而elasticsearch使用publish_host与群集通信。

 

转载于:https://my.oschina.net/airship/blog/3028403

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值