本文主要是介绍zookeeper报错Have smaller server identifier, so dropping the connection,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
三台zookeeper,其中一台连接不上其他两台了,查看日志报错
Have smaller server identifier, so dropping the connection: (2, 1)
其他机器也报错连不上这个机器了,使用zkCli.sh无法连接成功该zk节点
解决方案: 保持这台有问题zk的现状, 按myid从小到大依次重启其他的zk机器;
原因: zk是需要集群中所有机器两两建立连接的, 其中配置中的3555端口是用来进行选举时机器直接建立通讯的端口, 大id的server才会去连接小id的server,避免连接浪费.如果是最后重启myid最小的实例,该实例将不能加入到集群中, 因为不能和其他集群建立连接
上面是网上给出的解决方案,我尝试过以后,还是不能解决我的问题,然后又经过仔细检查以后,发现出问题的这一台机器,host文件有点问题,故障时host里配置的是 127.0.0.1 加主机名。我把host改成了127.0.0.1 localhost,然后重启所有zookeeper服务,发现服务正常启动了
这篇关于zookeeper报错Have smaller server identifier, so dropping the connection的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!