Linux系统CentOS6.7配置Zookeeper时报错

报错Error contacting service. It is probably not running.

用Linux命令启动Zookeeper时可以启动,但是查看状态显示错误.
Linux系统CentOS6.7配置Zookeeper时报错_第1张图片

Using config: /root/apache-zookeeper-3.5.8-bin/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Error contacting service. It is probably not running

看了一些网上的解决方法,要求关闭防火墙,我已经关闭了,但是没有效果;还有一些说端口占用,我运行这个命令查看netstat -apn | grep 2181,也是没有问题…

于是运行下面这个Linux命令,看一些错误所在

./zkServer.sh start-foreground,使用这个命令启动zookeeper可以查看错误信息
切换到/bin目录下,运行./zkServer.sh start-foreground这个命令
出现错误信息
Exception in thread “main” java.lang.UnsupportedClassVersionError: org/apach
Linux系统CentOS6.7配置Zookeeper时报错_第2张图片

ZooKeeper JMX enabled by default
Using config: /root/apache-zookeeper-3.5.8-bin/bin/../conf/zoo.cfg
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/zookeeper/server/quorum/QuorumPeerMain : Unsupported major.minor version 52.0
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
	at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
	at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)

找了网上方法,说是jdk版本不一致,于是我看了一下JDK

运行java -version,javac -version,版本是一致的

Linux系统CentOS6.7配置Zookeeper时报错_第3张图片

So,我放弃了,重新装一个版本的Zookeeper

zookeeper官网下载地址。

链接:https://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/
由于官网下载太慢了,我选择了zookeeper-3.4.12,网上可以搜索到…
 最终运行运行./zkServer.sh start-foreground这个命令

报错INFO [main:NIOServerCnxnFactory@89] - binding to port 0.0.0.0/0.0.0.0:2181

Linux系统CentOS6.7配置Zookeeper时报错_第4张图片问题解决:
1.ps -ef |grep zookeeper 是有运行进程的,2181可以telnet通过

2.通过bin/zkCli.sh -server 127.0.0.1:2181 连接报错

3.top指令看到集群各节点zookeeper进程占用大量cpu大概500%~700%之间

4.查看状态报错:
zookeeper-3.4.12/bin/zkServer.sh status
JMX enabled by default
Using config: /home/zookeeper-3.4.12/bin/…/conf/zoo.cfg
Error contacting service. It is probably not running.
问题解决
删除:zookeeper-3.4.12/data/version-2/ 下面的数据,重启一下

然而,并无卵用,我狠狠敲一下键盘,喝了一口水,看了一会手机.然后默默输入命令…
./zkServer.sh restart
最后查看状态,惊到我了,居然不报错了…弄了一下午,吐了呀!
没有重启解决不了的Bug,哈哈!!!
Linux系统CentOS6.7配置Zookeeper时报错_第5张图片

补充最终解决方案

昨天是碰巧了
尝试多次,最终自己尝试知道如何解决
首先
1.开启一个标签页
运行命令zookeeper-3.4.12/bin/zkServer.sh start-foreground
Linux系统CentOS6.7配置Zookeeper时报错_第6张图片
再开启一个标签页
运行zookeeper-3.4.12/bin/zkServer.sh status查看状态
Linux系统CentOS6.7配置Zookeeper时报错_第7张图片
别问我为什么,我也不知道,试着试着就出来了…

鸣谢大佬们,罗列了很多方法,最终解决!!
https://blog.csdn.net/weiyongle1996/article/details/73733228
https://blog.csdn.net/reblue520/article/details/53560862

你可能感兴趣的:(java报错问题解决,zookeeper)