安全地替换 Zookeeper Quorum 中的坏节点

Dev*_*101 5 apache hadoop hbase apache-zookeeper

我们有 5 个节点 zookeeper quorum( A,B,C,D,E )在生产中运行,上周有 1 个节点宕机( E )。法定人数是健康的,但我们需要更换( E )新的健康节点( F )

我在 2 个选项之间徘徊

1. add ( F ) to the quorum and then remove  ( E )
2. replace ( F ) with ( E ) restart followers and then restart leader
Run Code Online (Sandbox Code Playgroud)

我测试了选项 #2,我可以看到( F )在强制领导后(通过重新启动领导)在法定人数中被接受

法定人数是健康的,但我只是想确定这是否是标准程序

我没有找到任何有关此版本节点替换的 apache 文档

ZK Version : 3.4.6
Run Code Online (Sandbox Code Playgroud)

小智 5

是的,对于 3.5.* 之前的版本,在确保更新配置以用新节点替换旧节点后,重新配置 ZK 集群需要协调重启,以便新节点可以加入仲裁,旧节点是移除。我发现这个要点很有帮助。

一般来说,对于升级,建议使用滚动重启 - 参考apache link

如果可能,我建议您考虑升级到 3.5* 版本,其中无需重新启动即可进行动态重新配置