1

我有 5 台机器的 ES 集群。其中一台机器总是使用比其他机器更多的资源,例如现在我看到平均负载是 CPU 7%,内存 65,

但是我有 node4,这很奇怪,因为它使用了 30% 的 CPU 和 86% 的内存。

机器完全一样,配置一样只有node4只是数据节点。当我将node4与其他奇迹进行比较时,他们正在做几乎相同的任务..

任何建议如何调试并查看为什么它比其他使用更多?

PS。我关心的原因是因为我的集群有几次因为 node4 而死,我在应用程序中做了一些改进,但我仍然想了解 node4 发生了什么。

4

1 回答 1

1

关于集群的两件事:

  • 这是错误的:“所有请求都发送到master(node1,node2)”!您应该以循环方式将请求发送到所有保存数据的节点,否则您将拥有比其他节点做更多工作的节点
  • 拥有大量小分片正在浪费内存和整体资源……您应该考虑为索引移动到 1 个主分片和 1 个副本。默认值(5 个主节点,1 个副本)太多了。你的索引太小了,不能有 5 个分片。
于 2016-04-18T12:45:05.457 回答