连接时,Zookeeper java.net.NoRouteToHostException

 飞飞鱼531 发布于 2023-01-29 16:18

这里为数据转储提前道歉.我有两台安装了Zookeeper的服务器.我想把它们作为一个整体来运行.这是我的zoo.cfg中的两个.

tickTime=2000
initLimit=10
syncLimit=5
dataDir=/opt/zookeeper/data
server.1=solr1:2888:3888
server.2=solr2:2888:3888
clientPort=2181

两台服务器都有一个myid文件.它们的名字在/ etc/hosts文件中,所以它们绝对可以看到对方.当我使用zkServer.sh启动其中任何一个时,它表示zookeeper已启动.但是,当我运行"zkServer.sh status"时,我看到以下消息:

Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

但是zookeeper java进程似乎正在运行,并且使用netstat显示tcp端口3888和2181正在侦听.当我尝试使用"sh zkCli.sh -server localhost:2181"连接到服务器时,我看到一堆环境信息,然后是一大堆这些日志条目:

2014-02-03 15:39:00,623 [myid:] - INFO [main-SendThread(localhost.localdomain:2181):ClientCnxn$SendThread@966] - Opening socket connection to server localhost.localdomain/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown error)
2014-02-03 15:39:00,646 [myid:] - INFO [main-SendThread(localhost.localdomain:2181):ClientCnxn$SendThread@849] - Socket            connection established to localhost.localdomain/127.0.0.1:2181, initiating session
JLine support is enable
2014-02-03 15:39:00,662 [myid:] - INFO  [main-SendThread(localhost.localdomain:2181):ClientCnxn$SendThread@1085] - Unable to read additional data from server sessionid 0x0, likely server has closed socket, closing socket connection and attempting reconnect

如果我尝试连接到其他服务器(sh zkCli.sh -server solr1:2181),我会看到一堆这样的:

2014-02-03 15:40:42,390 [myid:] - WARN  [main-SendThread(solr1:2181):ClientCnxn$SendThread@1089] - Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect
java.net.NoRouteToHostException: No route to host

Zookeeper似乎正在运行,尽管zkServer.sh状态另有说法.但有没有人对我的连接问题有任何见解?操作系统是RHEL 6.4,64位.

1 个回答
  • 啊哈,我现在解决了同样的问题,操作系统是Centos7.我检查所有配置文件但无法帮助.最后,我修改了iptable来添加这样的端口:2181,2888,3888,然后重新启动zookeeper服务器,它的工作原理.其中一个cmd就像:firewall-cmd --zone = public --add-port = 2181/udp --add-port = 2181/tcp --permanent然后reloat:firewall-cmd --reload当然,你可以关闭iptables并禁用iptables加载启动操作系统来实现这一目的.另外,你应该检查数据路径中是否有"myid"文件:dataDir =/opt/zookeeper/data,其所有者应该是"username:groupUsername"; 愿它也能帮到你.

    2023-01-29 16:20 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有