Elasticsearch集群中的节点数

时间:2018-11-30 23:27:18

标签: elasticsearch cluster-computing

在我们的大学中,我们有一个带有1个节点的Elasticsearch集群。现在我们有钱来安装功能更强大的服务器。我们每天产生7-10百万个访问日志。

使用以下方法创建集群会有什么好处?

a。。3个功能强大的服务器,每个64GB,16个CPU + SSD。
b。拥有14个功能不那么强大的服务器,每个服务器32GB和8CPU + SSD
ps:a和b的价格相同。

c。是一些建议吗?

提前谢谢

1 个答案:

答案 0 :(得分:0)

这取决于场景。对于您描述选项b的日志记录案例,对我来说似乎更灵活。让我解释一下我的观点:

  1. ,就像在日志记录方案中一样,然后实施hot/warm architecture。您将主要编写和阅读最近的索引。在某些情况下,您想访问较旧的数据,并且可能要缩小旧数据并关闭更旧的索引。

  2. 设置至少三个主合格节点,以防止出现脑吐问题。将相同的节点也配置为协调节点(还剩11个节点)

  3. 安装2个提取节点,以将提取工作负载移动到专用节点(还剩9个节点)

  4. 安装3个热数据节点以存储最新索引(剩余6个节点)

  5. 安装6个热数据节点以容纳较旧的,缩小的和封闭的索引。 (还剩0个节点)

先前的设置仅是示例。节点号/角色应该更改,如果

  1. 如果您需要更多的弹性。然后添加更多的主节点,增加索引节点的副本数。这也会减少总容量。

  2. 您需要可搜索或保存在已经关闭的索引中的旧数据越多,所需的节点就越温暖。然后根据需要重新平衡热/热节点数。如果您可以尽早删除旧数据,然后增加热节点数。

  3. 如果您具有xpack许可,请考虑安装ml / alterting节点。将此角色添加到主节点或减少数据节点的数量,以支持ml / alertig。

  4. 您是否需要kibana / logstash?根据工作量,专门准备一个/两个节点。

假设两个选项卡中的主板相同,则只需添加更多的ram / cpu / storage,就可以快速扩展14个框。如果规格已达到3个节点的最大值,则需要设置新的盒子并将它们加入群集中以进行扩展。但是随着时间的推移,这也可能会为您提供更多的最新硬件。

也请看一下:https://www.elastic.co/pdf/architecture-best-practices.pdf

如果您需要分片配置方面的背景知识,请参见ElasticSearch - How does sharding affect indexing performance?

顺便说一句:托马斯(Thomas)对堆大小的评论是正确的。如果您想了解背景,请查看以下内容:https://www.elastic.co/guide/en/elasticsearch/reference/current/heap-size.html