ElasticSearch 集群设计帮助 - 数据节点



我一直在阅读ES集群设计,并开始设计我们需要的集群。请有人澄清一些我仍然不清楚的事情吗?

所以我们想从 3 台服务器开始。

一开始,我们将拥有所有三个主节点、数据和摄取,其中至少有两个主节点。这基本上意味着,我们坚持默认值。

问题 1 是 - 数据节点到底是什么?完整索引是否跨其他数据节点复制?因此,如果一个出现故障,在我们的例子中,第三个应该提升为主服务器,并且集群应该可以正常工作。

在 Elasticsearch 中找到了这个链接 分片和副本 它解释了什么是数据节点。所以基本上如果我们的索引有 12 个分片,那么 ES 可能会在每个数据节点上存储 4 个主分片和 8 个副本。这是对的吗?

问题2:以此为起点,我们是否可以添加更多服务器来充当数据节点,摄取节点等。

问题 3:我们在 ES 节点前面设置了一个负载均衡器,这是访问超过 9200 的 ES 集群的推荐方式吗?摄取时,如果使用此地址,它将随机路由到摄取节点。查询时,它应该路由到可以处理搜索的随机 ES 节点。

数据节点到底是什么?

分片的磁盘。

完整索引是否跨其他数据节点复制?

是的,副本也意味着可用性,获得分片的概念是理解这一点的关键,不要混淆。

在我们的例子中,第三个应该提升为主服务器,集群应该运行。

是的,阅读有关绿色,黄色和红色状态的信息,在这种情况下,它将从绿色变为黄色,这意味着仍在运行但需要采取行动,但是请阅读"掌握资格",并且避免裂脑,非常重要。 https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-node.html#master-node

以此为起点,我们是否可以添加更多服务器来充当数据节点、采集节点等。

只要你想,应用程序要求是什么? 高读低写?反之亦然?等于? 根据用例定义您希望如何扩展集群。

问题 3:我们在 ES 节点前面设置了一个负载均衡器,这是访问超过 9200 的 ES 集群的推荐方式吗?摄取时,如果使用此地址,它将随机路由到摄取节点。查询时,它应该路由到可以处理搜索的随机 ES 节点。

例如,如果它是一个nginx,它可以工作,因为我已经做到了,对节点角色的概念有清晰的理解,例如,"协调节点"将处理一些可能需要的流程,而nginx不知道。

IMO 现在您已经有了实例,这是您边做边学和试验它们的绝佳机会,因此请移动配置,尝试重现您的应用程序可能存在的问题,看看会发生什么,啊哈!时刻将会发生,并且在这里完全掌握。

最新更新