gpt4 book ai didi

dynamic - ZooKeeper - 动态添加对等点?

转载 作者:行者123 更新时间:2023-12-04 14:48:06 24 4
gpt4 key购买 nike

我是 ZooKeeper 的新手。这就是我需要的。

我有一个同行网络。

  • t=t_1 -> [peer-1 (Leader), peer-2]peer-1 是主节点,所有客户端都连接到这个节点。
  • t=t_2 -> [peer-1 (Leader), peer-2, peer-3]稍后,peer-3 加入该组。是否可以“动态”将 peer-3 添加到 zookeeper 服务器列表中(即,无需在 peer-1 上重新启动 ZooKeeper)?
  • t=t_3 -> [peer-3 (Leader), peer-4]一段时间后,peer-1 和peer-2 都离开该组(例如,死亡或被关闭。)假设有一种方法可以将peer-3 和peer-4 动态添加到组peer-3 成为领导者和所有客户端请求都发送到 peer-3。

  • 除了使用 ZooKeeper 来做这样的事情之外,我还有其他的选择吗?

    谢谢。

    最佳答案

    目前,您无法在不重新启动的情况下动态更改 zookeeper 集群的配置。有一个 Unresolved 问题可以解决此问题,ZOOKEEPER-107 .描述集群成员算法的论文很有趣,可以在here找到。 .

    您可以通过一次重新启动服务器节点 1 来更改集群的配置。例如,如果您的集群有服务器 A、B、C,并且您想用 D 替换服务器 C,那么您可以执行以下操作:

  • 打倒 C
  • 调出D,它的peer list是A,B,D
  • 取下B
  • 将 B 的对等列表更改为 A,B,D
  • 养B
  • 删除 A 将 A 的对等列表更改为 A、B、D
  • 提起A
  • 将所有客户端的客户端配置更改为指向 A、B、D

  • 在 t=t_1 时,您有一个包含 2 个 zookeeper 节点的集群。这很脆弱,如果任一节点宕机,您将无法建立仲裁(floor(N/2) + 1),集群将不可用。通常zookeeper集群是奇数。

    我不确定你说的时候想做什么,

    peer-3 becomes the leader and all client requests are send to peer-3.



    你不能指定zookeeper集群中的哪个节点是leader,节点自己会选举他们的leader,并且leadership会随着节点的上升和下降而改变。同样,客户端通常并不总是连接到领导者,但客户端会获得集群中的机器列表,并随机连接到一台,如果它们连接的服务器出现故障,则重新连接。您可以设置 leaderServes选项指定领导者不服务客户端连接。

    关于dynamic - ZooKeeper - 动态添加对等点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11375126/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com