elasticsearch 是如何实现master选举的?

Posted 四猿外

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了elasticsearch 是如何实现master选举的?相关的知识,希望对你有一定的参考价值。

前置前提:

  • 1、只有候选主节点( master:true)的节点才能成为主节点。
  • 2、最小主节点数( min_master_nodes)的目的是防止脑裂。

这个我看了各种网上分析的版本和源码分析的书籍,云里雾里。

核对了一下代码,核心入口为findMaster,选择主节点成功返回对应Master,否则返回null。选举流程大致描述如下:

第一步: 确认候选主节点数达标,elasticsearch.yml 设置的值discovery.zen.minimum_master_nodes;

第二步: 比较:先判定是否具备master 资格,具备候选主节点资格的优先返回;若两节点都为候选主节点,则id 小的值会主节点。注意这里的id 为string 类型。

以上是关于elasticsearch 是如何实现master选举的?的主要内容,如果未能解决你的问题,请参考以下文章

Elasticsearch 是如何实现Master 选举的?

elasticsearch 是如何实现 master 选举的 ?

Elasticsearch是如何实现master选举的?

elasticsearch 是如何实现master选举的?

Elasticsearch 面试专题

es题目