栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

java.net.ConnectException: Connection refused: no further information,zookeeper连接不上问题解决

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java.net.ConnectException: Connection refused: no further information,zookeeper连接不上问题解决

项目场景:

连接linux虚拟机(32位centos)上的zookeeper时一直连接不上并报错。


问题描述:

报错信息:
java.lang.IllegalStateException: zookeeper not connected
java.net.ConnectException: Connection refused: no further information


原因分析:

报错信息里面也写的比较明白了:
zookeeper not connected:zookeeper没连上
Connection refused:连接被拒
那到底是为什么没连接上的,个人总结了几种原因:
ip地址或端口号配置错误、不是本机连接zookeeper的话可能是因为防火墙没关、zookeeper没有打开、zookeeper打开了但没有完全打开


解决方案:

1. 查看配置的注册中心ip地址和端口是否正确


1.1查看ip地址
Windows系统在cmd窗口输入ipconfig
Linux系统在终端命令窗口输入ifconfig
本机是127.0.0.1

1.2查看zookeeper端口
在rookeeper解压后的目录apache-zookeeper-3.5.6-bin下的conf目录中有一个zoo.cfg文件,打开文件查看,如下2181就是端口号。

 #the port at which the clients will connect
clientPort=2181

2. 如果zookeeper注册中心不在本机,则要查看一下注册中心所在的机器防火墙有没有关闭

Linux查看防火墙状态:service iptables status
Linux关闭防火墙:service iptables stop

3. zookeeper没打开(打开了但没有完全打开)

※打开命令:
Linux系统:./zkServer.sh start
Windows系统:./zkServer.cmd
(注意要在bin目录下执行命令)

※zookeeper启动显示started不一定真正打开了,要去检查一下zookeeper是否打开
※查看状态命令:
Linux系统切入bin目录在终端命令窗口输入./zkServer.sh status
Windows系统在cmd窗口输入netstat -ano查看是否占用2181端口


※如果明明执行了zkServer.sh/zkServer.cmd查看状态却显示没有开启,则要检查一下logs目录下的日志信息,根据报错继续检查zookeeper不能开启的原因。
我的报错原因是·jdk版本太低,我吧jdk版本从1.7换成1.8就好了。

4. 以上都没问题还是报错的话可以试试下面的方式

把设置一个比较大的timeout值,可能是连接超时。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/903926.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号