当前位置: 首页 > 知识库问答 >
问题:

没有为新添加的节点分配elasticsearch碎片

鞠边浩
2023-03-14

在我的ES集群中,我有10个碎片和2个副本,有5个节点。我只是在集群中添加了一个新节点,它与集群同步了。状态为绿色,根据集群API,我们现在在集群中有6个活动数据节点。但是,当我选中`'http://localhost:9200/_cat/shards'时,没有为该节点分配碎片。因此,没有弹性查询指向这个新添加的节点。该节点的日志文件中没有什么特别之处:

[2016-11-12 14:39:21,114][INFO ][node                     ] [xxx] initializing ...
[2016-11-12 14:39:22,801][INFO ][plugins                  ] [xxx] modules [reindex, lang-expression, lang-groovy], plugins [], sites []
[2016-11-12 14:39:22,843][INFO ][env                      ] [Chak] using [1] data paths, mounts [[/ (/dev/sda1)]], net usable_space [531gb], net total_space [879.9gb], spins? [no], types [ext4]
[2016-11-12 14:39:22,843][INFO ][env                      ] [xxx] heap size [989.8mb], compressed ordinary object pointers [true]
[2016-11-12 14:39:22,844][WARN ][env                      ] [xxx] max file descriptors [65535] for elasticsearch process likely too low, consider increasing to at least [65536]
[2016-11-12 14:39:31,375][INFO ][node                     ] [xxx] initialized
[2016-11-12 14:39:31,377][INFO ][node                     ] [xxx] starting ...
[2016-11-12 14:39:32,616][INFO ][transport                ] [xxx] publish_address {192.168.200.8:9300}, bound_addresses {192.168.200.8:9300}
[2016-11-12 14:39:32,637][INFO ][discovery                ] [xxx] divar_elastic/GwfnlWtzTDGv42bZA2PcMA
[2016-11-12 14:39:36,042][INFO ][cluster.service          ] [xxx] detected_master {xxx}{907DRgSbTv2T-dcDOwPfSw}{192.168.200.7}{192.168.200.7:9302}, added {{xxx}{TAgbh6SmShKCPEPBtUXyXw}{192.168.200.3}{192.168.200.3:9300},{xxx}{907DRgSbTv2T-dcDOwPfSw}{192.168.200.7}{192.168.200.7:9302},{xxx}{C_b3gDlpTfu1zt0RdDlckw}{192.168.200.13}{192.168.200.13:9300},{xxx}{lYOnZzFPTiuJr7JoMNfK5g}{192.168.200.4}{192.168.200.4:9300},{xxx}{BSzFHsAMRyq8cqMh22GSKg}{192.168.200.11}{192.168.200.11:9300},}, reason: zen-disco-receive(from master [{Nar}{907DRgSbTv2T-dcDOwPfSw}{192.168.200.7}{192.168.200.7:9302}])
[2016-11-12 14:39:36,143][INFO ][cluster.routing.allocation.decider] [Foo] updating [cluster.routing.allocation.disk.watermark.low] to [93%]
[2016-11-12 14:39:36,143][INFO ][cluster.routing.allocation.decider] [Foo] updating [cluster.routing.allocation.disk.watermark.high] to [97%]
[2016-11-12 14:39:37,661][INFO ][http                     ] [xxx] publish_address {192.168.200.8:9200}, bound_addresses {192.168.200.8:9200}
[2016-11-12 14:39:37,664][INFO ][node                     ] [xxx] started

对如何解决这个问题有什么特别的意见吗?

共有1个答案

周朗
2023-03-14

这可能有几个可能的原因。

>

  • 当节点离开集群或加入集群时,主节点会暂时延迟碎片重新分配,以避免在重新平衡碎片上不必要地浪费资源。检查您的延迟超时。

    curl-xput'localhost:9200/ /_settings'-d'{“settings”:{“index.unassigned.node_left.delayed_timeout”:“30s”}}

    您需要检查碎片分配是否设置为false。若要再次启用碎片重新分配,请执行以下操作。

    curl-xput'localhost:9200/_cluster/settings'-d'{“transient”:{“cluster.routing.allocation.enable”:“all”}}'

    如果以上都是好的,那么您需要检查主日志,以确定为什么它没有向节点提供任何数据。在最坏的情况下,您可能需要重新启动集群,您可以一次对一个节点进行滚动停止-启动。

  •  类似资料:
    • 问题内容: 过去一个小时刚刚下载并安装了elasticsearch 1.3.2 打开到端口9200和9300:9400的IP表 在/ etc / hosts中设置我的计算机名称和IP 头模块和护理人员已安装且运行平稳 卷曲在本地主机上工作完美 将所有jar从下载中复制到eclipse中,因此版本相同 --Java– -输出- 更新:现在我真的很困惑。我只是按了日食3次。2次收到上述错误。1次搜索成

    • 我需要在XML中保留很少的值,并且需要通过XSLT添加新的节点。 价值需要保留,新的选项需要添加。 如何实现这一点。下面是我的代码。 有人能帮忙吗? 谢谢

    • 我正在尝试解析下面的XML文件并基于它创建一个JTree。 “窗口01”将添加到根节点“对象列表”,但“页面01”节点不会显示在“窗口01”节点下。下面给出了使用的源代码。请帮忙!!! 这是主课。编译时不会显示错误或警告。

    • 问题内容: 我从计算机访问服务器 得到这个 为什么使用Java API会出错? 编辑 有集群和节点部分的配置 问题答案: 一些建议: 1-使用端口9300。[9300-9400]用于节点到节点通信,[9200-9300]用于HTTP通信。 2-确保您使用的Java API的版本与服务器上运行的elasticsearch的版本匹配。 3-确保集群名称为(检查服务器上的elasticsearch.ym

    • 问题内容: 我有一个具有4个节点的ES集群: 我不得不重新启动search03,当它回来时,它又重新加入了群集,没有问题,但是留下了7个未分配的碎片。 现在,我的集群处于黄色状态。解决此问题的最佳方法是什么? 删除(取消)分片? 将分片移动到另一个节点? 将分片分配给节点? 将“ number_of_replicas”更新为2? 还有其他东西吗? 有趣的是,当添加新索引时,该节点开始在该节点上工作

    • centOS上的elasticsearch 1.7.x 我们的三节点集群变成了两节点集群。一切都很好。每个碎片我们都有3个复制品,所以我们都有了。 但现在集群运行状况是黄色的,我们有: 我们已经将ElasticSearch.yml中的副本计数设置更改为1(从2)并在两个节点上重新启动ES。这没有什么区别。 下一步是什么? 我看到了如何重新分配碎片,但没有看到如何消除未分配的碎片。