V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
scalaer
V2EX  ›  程序员

zookeeper 的 leader election 原理是啥

  •  
  •   scalaer · 2018-12-12 15:05:04 +08:00 · 2090 次点击
    这是一个创建于 2177 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前 3 台机器 master(2core 4g), node1(1core 1g) node2(1core 2g)

    zookeeper 的服务启动顺序为 master -> node1 -> node2

    发现 node1 选举为 leader 了


    不是根据机器好坏来的吗?

    9 条回复    2018-12-13 09:38:40 +08:00
    misaka19000
        1
    misaka19000  
       2018-12-12 15:15:15 +08:00 via Android
    zk 用的是 zaxb 算法吧
    p2p
        2
    p2p  
       2018-12-12 15:16:50 +08:00
    选举投票 myid 大的优先 zxid 大的优先
    Miiiz
        3
    Miiiz  
       2018-12-12 15:20:52 +08:00
    优先检查 zxid,大的胜出,如果 zxid 一样则 myid 大的胜出
    Wisho
        4
    Wisho  
       2018-12-12 15:42:42 +08:00
    zk 用的是 zab 协议吧,优先选 zxid (浅显理解成记录 id )大的,zxid 相同时优先选机器 id 大的。
    bravoer
        5
    bravoer  
       2018-12-12 16:57:55 +08:00
    去看 zab 的论文 有详细的说明。
    scalaer
        6
    scalaer  
    OP
       2018-12-12 17:07:08 +08:00
    @misaka19000 @p2p @Miiiz @Wisho @bravoer 多谢各位, 🙏. 用华为送的云服务搭了一个 kafka 集群, 有什么好玩的事可以干吗?
    xiaoxinshiwo
        7
    xiaoxinshiwo  
       2018-12-12 19:34:33 +08:00
    TheCure
        8
    TheCure  
       2018-12-12 22:10:19 +08:00
    原理一致 https://zhuanlan.zhihu.com/p/40395929
    简单来说就是所有机器维护一个 Term, 并且保证在一个相同的 Term 内只投一次票
    Wisho
        9
    Wisho  
       2018-12-13 09:38:40 +08:00
    @mggis0or1 写个什么各大虚拟币交易所的交易数据集成 panel ?实时把各交易所的数据弄回来,灌进 kafka 里,然后用 spark streaming 或者 flink 聚合一下数据,可视化到前端?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3400 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 11:52 · PVG 19:52 · LAX 03:52 · JFK 06:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.