Elasticsearch--Master选举

角色
  • 主节点(active master):一般指的是活跃的主节点,避免负载任务,主节点主要用来管理集群,专用master节点仍将充当协调节点

  • 候选节点(master-eligible nodes):默认具备选举权被选举权,可以参与选举,也可以为其他节点投票。

  • 投票节点(voting_only node):仅投票节点没有被选举权只有选举权,也就是仅投票节点永远无法成为主节点,这样的话我们就可以为其分配data角色让其承担数据负载,这样技能保证选举出的新的主节点是一个专用主节点,又降低的资源浪费。

    一般情况下,voting_only 和 master 角色是一起配置的,单独配置 voting_only 角色是没有意义的。

    配置master角色的节点拥有被选举权和选举权,而voting_only 的作用就是阉割掉候选节点的被选举权,让其只能投票,而不能参与选举。所以如果没有master角色,配置voting_only也是没有意义的。

  • 专用主节点(dedicated master-eligible node):即 node.roles: [master],一般指的是只保留master角色的候选节点。

  • 数据节点(data nodes):数据节点保存包含已编入索引的文档的分片。数据节点处理数据相关操作,如 CRUD、搜索和聚合。这些操作是 I/O 密集型、内存密集型和 CPU 密集型的。监控这些资源并在它们过载时添加更多数据节点非常重要。

  • 预处理节点(ingest nodes):常用语一些数据写入之前的预处理操作,比如去除空格、split等操作,常和update_by_query、reindex等

  • 远程节点(remote_cluster_client client)

    具有 remote_cluster_client角色的节点,使其有资格充当远程客户端

    当需要通过远程访问节点时,该角色必须配置,比如通过publish_host配置的地址访问服务节点时,该角色必须启用

节点失效监测机制
  • NodesFaultDetection:即 NodesFD,用于定期检查集群中的节点是否存活。

  • MasterFaultDetection:即 MasterFD,作用是定期检查 Master 节点是否存活。

    image.png

何时触发选举
  • 活跃master节点数量小于法定票数

  • active master挂掉

选举流程

image.png

脑裂问题
  • 何为脑裂:无主或多主

  • 解决办法:discovery.zen.minimum_master_nodes=N/2+1,N为有效投票节点数。

相关推荐

  1. Elasticsearch 如何实现 master 选举

    2024-01-12 18:04:02       17 阅读
  2. 面试:Elasticsearch是如何实现Master选举的?

    2024-01-12 18:04:02       17 阅读
  3. ElasticSearch之cat master API

    2024-01-12 18:04:02       43 阅读
  4. Elasticsearch如何选择版本

    2024-01-12 18:04:02       17 阅读
  5. origin/master master

    2024-01-12 18:04:02       27 阅读
  6. ElasticSearch

    2024-01-12 18:04:02       38 阅读
  7. Elasticsearch

    2024-01-12 18:04:02       31 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-12 18:04:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-12 18:04:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-12 18:04:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-12 18:04:02       20 阅读

热门阅读

  1. springboot 集成 @Cacheable简单示例

    2024-01-12 18:04:02       39 阅读
  2. 平方朋友对C++

    2024-01-12 18:04:02       30 阅读
  3. Jenkins相关问题及答案(2024)

    2024-01-12 18:04:02       28 阅读
  4. Docker快速安装MongoDB数据库

    2024-01-12 18:04:02       36 阅读
  5. 停止css @keyframes动画

    2024-01-12 18:04:02       36 阅读
  6. ubuntu 22.04源码装ros1 noetic

    2024-01-12 18:04:02       42 阅读
  7. 2024年Ubuntu18.04执行do-release-upgrade报错的解决方案

    2024-01-12 18:04:02       34 阅读
  8. 一个算法带来的反思+Map复杂方法的使用总结

    2024-01-12 18:04:02       22 阅读
  9. 深入了解线程

    2024-01-12 18:04:02       32 阅读
  10. Linux部署WBO在线白板

    2024-01-12 18:04:02       38 阅读