替换zookeeper服务器

vwoqyblh  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(347)

我想用3个新的zookeeper服务器替换当前的3个zookeeper服务器。我补充说:
Ambari的新动物园,
向变量添加新变量: hbase.zookeeper.quorum ha.zookeeper.quorum zookeeper.connect hadoop.registry.zk.quorum yarn.resourcemanager.zk-address 重新启动服务,重新启动rm,当我关闭所有旧的zoo服务器时,仍然无法连接到任何新的zoo。
zookeeper客户端-服务器zoo-new1出现以下错误:
无法从服务器sessionid 0x0读取其他数据,可能服务器已关闭套接字
在新的动物园服务器登录日志(zookeeper.out)中:
“由于java.io.ioexception导致会话0x0关闭的异常:ZookeepServer未运行”
当我运行一个旧的zookeeper时,一切正常,我还可以连接到新的zookeeper服务器。

zengzsys

zengzsys1#

我最好的猜测是,这与Zookeeper最重要的属性之一有关,即领导人选举。如果您从一个有3个服务器的zookeeper仲裁开始,然后再向其中添加3个服务器。您必须至少运行4台服务器才能访问仲裁。当zookeeper节点无法选择一个领导者时,它将看起来像是失败了。
这也是为什么当你启动一个旧的Zookeeper时,你的设置可以工作的原因,因为他们现在是6个可能的4个活着。如果您想让新的设置工作,您需要从配置中删除旧的服务器,这样仲裁就只知道三个新的服务器。简单地关闭zookeeper服务器不会将其从仲裁中删除。

相关问题