【问题标题】:How could I set up a ES cluster?如何设置 ES 集群?
【发布时间】:2014-06-03 18:44:25
【问题描述】:

我有一个 ip 为 192.168.1.101 的主节点和一个 ip 为 192.168.1.106 的非主节点。两者使用相同版本的 ElasticSearch-1.2.0。

但是在我启动主节点和非主节点后,我得到了以下信息:

[2014-06-04 02:38:49,350][INFO][discovery.zen] [node2] 未能向主服务器发送加入请求 [[node1][TxZ5wuhnT1awPC1gEjYPdw][flyers-MacBook-Air.local][ inet[/192.168.1.101:9300]]{master=true}],原因 [org.elasticsearch.ElasticsearchTimeoutException: 等待任务超时。]

主节点配置:

cluster.name: mycluster
节点名称:“node1”
node.master: 真
节点数据:真
index.number_of_shards: 5
index.number_of_replicas: 1
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["192.168.1.101"]

非master节点的配置:

cluster.name: mycluster
节点名称:“node2”
node.master: 假
节点数据:真
index.number_of_shards: 5
index.number_of_replicas: 1
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["192.168.1.101"]

我不知道为什么会发生这个异常。请给我一些提示。提前致谢。

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    在我将 network.bind_hostnetwork.publish_hostnetwork.host 设置为节点持有的 IP 后,它就可以工作了。很奇怪。

    【讨论】:

    • 只是一个注释network.host 替换了network.bind_hostnetwork.publish_host。我的问题是我设置了错误接口的 IP。
    【解决方案2】:

    在我发现我的 ES 节点没有按预期绑定到 eth0 而是绑定到 eth2 之前,我遇到了同样的问题。这当然行不通,因为主节点的注册响应无法发送到我其他网络的 IP 地址。 我可以通过在我的 elasticsearch.yml 中设置以下参数来解决此问题(在无法加入集群的服务器上)

    network.publish_host: "_eth0:ipv4_"
    

    【讨论】:

      【解决方案3】:

      我最好将两种配置中的["192.168.1.101"] 更改为["192.168.1.101", "192.168.1.106"]

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-05-25
        • 2020-04-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-08
        • 1970-01-01
        相关资源
        最近更新 更多