Elasticsearch 是如何实现Master 选举的?
Posted 四猿外
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Elasticsearch 是如何实现Master 选举的?相关的知识,希望对你有一定的参考价值。
1、Elasticsearch 的选主是ZenDiscovery 模块负责的, 主要包含Ping(节点之间通过这个RPC 来发现彼此)和Unicast(单播模块包含一个主机列表以控制哪些节点需要ping 通)这两部分;
2、对所有可以成为master 的节点( node.master: true)根据nodeId 字典排序,每次选举每个节点都把自己所知道节点排一次序,然后选出第一个(第0 位)节点,暂且认为它是master 节点。
3、如果对某个节点的投票数达到一定的值(可以成为master 节点数n/2+1)并且该节点自己也选举自己,那这个节点就是master。否则重新选举一直到满足上述条件。
4、补充: master 节点的职责主要包括集群、节点和索引的管理,不负责文档级别的管理;data 节点可以关闭http 功能*。
以上是关于Elasticsearch 是如何实现Master 选举的?的主要内容,如果未能解决你的问题,请参考以下文章
Elasticsearch 是如何实现Master 选举的?