Elasticsearch 协调节点如何工作?

新手T_T

我正在使用 Elsaticsearch Cluster(7.7 OSS 版本)。

我总共运行 5 个节点,2 个用于协调节点,3 个用于主节点和数据节点。

我阅读了 Elasticsearch 节点角色指南(https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-node.html#coordinating-node),它告诉我们“每个节点都是隐式协调节点”

我很困惑,指南意味着我的主节点和数据节点也可以是协调节点,协调节点和主节点和数据节点的分离变得无用。

如果协调节点角色为空,那么协调节点处理搜索请求或批量索引的优先级更高?

我的协调节点的yml文件是这样的

node.master: false
node.data: false
node.ingest: false

当我调用 _cat/nodes api 时,我的协调节点实际上具有“remote_client_cluster”角色我的协调节点实际上是作为协调节点工作的吗?或作为 remote_client_cluster 节点工作?

在此处输入图片说明

瓦尔

的确,所有节点本质上都是协调节点,这意味着如果它们收到用户请求,它们就可以处理。您的两个协调节点实际上是仅协调节点,这意味着它们所能做的就是充当负载均衡器节点,将用户请求分派到数据节点并收集节点响应,然后再将它们发送回客户端。

当您引入仅协调节点时,其想法是将所有用户流量定向到这些节点,无论流量来自您的客户端、Logstash、Kibana 还是任何其他需要与 Elasticsearch 交互的应用程序。那些仅进行协调的节点将知道集群状态,从而知道将搜索和索引流量路由到哪里。它们就像智能负载平衡器。

您的仅协调节点,要真正仅进行协调,必须具有以下配置:

node.data: false 
node.ingest: false 
node.master: false 
node.ml: false 
node.remote_cluster_client: false 
node.transform: false 
node.voting_only: false 

所以总结一下:

  • 您的两个协调节点将像集群前的负载均衡器一样处理和管理用户流量
  • 您的主节点将完成他们的主节点工作
  • 您的数据节点将完成他们的数据工作

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章