最近在看zookeeper搭建在windows上搭建一个小的项目,每次开机都要取双击cmd的启动,总是忘记然后决定部署到远程进行远程连接和注册。
然后问题来了,zookeeper连接远程的时候一直在重复的尝试连接然后断开,继续尝试,直到报错。
[org.apache.zookeeper.ClientCnxn]-[DEBUG] zookeeper.disableAutoWatchReset is false
[org.I0Itec.zkclient.ZkClient]-[DEBUG] Awaiting connection to Zookeeper server
org.I0Itec.zkclient.ZkClient]-[DEBUG] Waiting for keeper state SyncConnected
[localhost-startStop-1-SendThread(192.168.25.128:2181)] [org.apache.zookeeper.ClientCnxn]-[INFO] Opening socket connection to server . Will not attempt to authenticate using SASL (unknown error)
突然想起来忘记打开服务器端口,那我们来打开zookeeper端口和dubbo注册端口
使用的命令
firewall-cmd --add-port 端口号/tcp
然后问题还是没有解决,依然是重复尝试连接,然后连接失败...(插一句,开完端口一定要检查一下 查询端口开启信息 firewall-cmd --list-ports https://blog.csdn.net/weixin_34332905/article/details/92673905)
我就是因为没有及时检查才踩了一个大坑,说来可笑,查了很多资料答案竟然是 为了使用 linux某某 服务和功能 关闭防火墙 ,然后下面评论高呼谢谢博主完美解决......不知道你们去公司以后直接关了服务器防火墙会不会被开除哈哈哈哈哈,不过一般也不会轻易把服务器给你...
不废话,我关闭了防火墙发现连接可以,证明代码和服务部署没有任何问题,开启防火墙然后重新找问题,这里有一款zookeeper可视化工具使用,就像redis的桌面工具一样...
先检查了端口开放
firewall-cmd --list-ports
果然没有打开端口,这时问题基本解决,就是端口问题,重新开放端口,使用单个端口开放命令
firewall-cmd --permanent --zone=public --add-port=端口号/tcp
然后查看了一下端口开放已经有了,测试连接立马成功了!!!不知道什么原因呢上面的端口没有打开...
可笑的地方是几个大的平台出现大量的重复文章,异口同声的说关闭防火墙,随着码农的数量越来越多质量越来越低,刚入行的小白被迷糊的晕头转向...抽时间扩展和学习的又能有几个人,有些人培训班出来可以拿高薪,有些人出来就放弃转行说行业不行,说培训割韭菜。
查了一上午资料有一个大哥 “唱反调” 他没有关闭防火墙也把问题解决了,点赞
扩展一点,修改了zookeeper的默认端口以后在连接客户端 zkCli.sh 时要加上端口号 不然会默认连接2181导致报错, 例如 ./zkCli.sh -timeout 5000 -server 127.0.0.1:9991
搞笑!无法连接远程zookeeper,一次Zookeeper有关的错误解决
原文:https://www.cnblogs.com/xiaozhang666/p/13712449.html