我正在使用 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] 删除。
我来说两句