【问题标题】:how to have two nodes on localhost server elasticsearch如何在本地主机服务器elasticsearch上有两个节点
【发布时间】:2016-05-04 15:06:30
【问题描述】:

我在本地主机上工作,为了了解什么是集群和一个节点是什么,我想在我的本地主机上有两个节点。

只是为了说清楚: 当我从 bin/elasticsear 午餐时,我正在寻找一个集群,对吧?

如果是,那么节点在哪里?

我的集群上如何有两个节点?

更新

你可能会问我为什么需要那个?

这是因为,您可能知道,elasticsearch 集群中的每个索引都有阴影。一个索引默认5个分片,默认每个索引有1个副本,所以每个索引默认有10个分片,5个原始数据,5个副本。在 elasticsearch 中,不可能将副本的分片和原始分片放在同一个节点上。因此,就我而言,我有一个集群为每个索引运行 5 个原始分片,但我没有 5 个副本的分片。这就是为什么我的索引状态是黄色(不是绿色,不是红色),我希望它是绿色的,因此我需要集群中的另一个节点来放置碎片,但我只有一个弹性搜索服务器(localhost),这就是我需要的原因我的 localhost elasticsearch 服务器上的另一个节点

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    每当你启动弹性搜索服务器时,master node 默认会启动。为了运行另一个节点,只需转到另一个终端并再次启动你的弹性搜索服务器。 确保:

    • discovery.zen.ping.multicast.enabled: true in elasticsearch.yml

    由于elasticsearch本质上是distributed,新添加的实例会被已经存在的节点自动检测到。您可以在终端验证这一点。

    假设现有节点的名称是node1,新添加的节点是node2

    • 在运行node1 的终端上,您将看到以下消息:

      [node1] added [node2]

    • node2 已启动的终端上,您将看到消息:

      [node2] detected_master [node1]

    两个节点自动检测到彼此。您可以运行以下查询来检查正在运行的节点:

    GET /_cluster/state
    

    这将列出所有节点

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-16
      • 2020-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-10
      • 1970-01-01
      • 2017-11-24
      相关资源
      最近更新 更多