Zookeeper异常解决方案

目录

一、Starting Zookeeper ............... FAILED TO START

1、查看错误日志信息

 2、总结

二、-bash:ZookeeperServer.sh: command not found异常

2、总结


 

 

 

一、Starting Zookeeper ............... FAILED TO START

1、查看错误日志信息

当Zookeeper在启动过程中可能出现Starting Zookeeper ......FAILED TO START,异常,这类异常该怎么解决那?

第一步查看错误日志:

可以通过./zkServer.sh start-foreground 命令看看日志信息;通过日志错误信息记录来判断出现异常的具体原因:

root@gaokaoli:/usr/local/apache-zookeeper-3.5.7/bin
ZooKeeper JMX enabled by default
Using config: /usr/local/apache-zookeeper-3.5.7/bin/../conf/zoo.cfg
Error: Could not find or load main class org.apache.zookeeper.server.quorum.QuorumPeerMain
Caused by: java.lang.ClassNotFoundException: org.apache.zookeeper.server.quorum.QuorumPeerMain

通过上述信息描述,我们可以发现这个异常具体原因是当前压缩包是源码压缩包,系统在解压后,发现编码格式都是java源码,而不是编译包;

Error: Could not find or load main class org.apache.zookeeper.server.quorum.QuorumPeerMain

猜测应该是没有找到启动类,应该是缺少某一个 jar 文件。

       对比以前搭建的 zookeeper(3.4.9) ,以前的 zookeeper 安装路径下有一个 lib 目录,而 3.5.6 版本没有,将 lib 复制到到 3.5.6 版本的安装目录。

630f2eb2408e43dba6b7922a8887af5e.png

 尝试再次启动;

打脸了,还是失败,错误信息一样;

小本本记好,考试会考的重点来了;

 经过多次尝试,使用了很多版本的Zookeeper,发现 Zookeeper 还是启动不成功,因此将 Zookeeper 降低版本,使用  Zookeeper 3.4.9  ,Zookeeper 则正常启动

3acda23e4efe4bb791eebd3fea24441d.png

 072fe496070d45f5802594b2b0512391.png

 

20191016152134839.png

 2、总结

因为压缩包内不带bin文件,带有bin文件的压缩包才是标准压缩包,而不带bin的压缩包是源码压缩包,很容易混淆,下次千万别解压错了。

Zookeeper在3.5版本以后,会自动把8080端口给占用了,所以也会导致启动不成功;

🤡第一种方案
直接换一个端口号就可以了,在配置文件conf中的zoo.cfg添加以下命令:

# admin port
admin.serverPort=8089

🤡第二种方案
假如不使用服务器,直接将其禁用,也是在配置文件中添加如下命令:

# 禁用服务
admin.enableServer=false

二、-bash:ZookeeperServer.sh: command not found异常

出现该异常时在服务器中Zookeeper的bin目录下使用zkServer.sh start

root@gaokaoli:/usr/local/apache-zookeeper-3.5.7/bin
zkServer.sh: command not found

明明已经进入了zookeeper的安装目录bin下了,执行zkServer.sh start 没有这个命令?

或者有这个命令,但启动不了;

两种解决方法:

(1)一种是到zookeeper的 安装目录bin下,将命令换成 ./ zkServer.sh start  ;

(2)一种是配置环境变量:vim /etc/profile ,添加以下代码:

export ZOO_HOME=/usr/local/zookeeper-3.4.6
export PATH=$ZOO_HOME/bin:$PATH

然后 source /etc/profile ;

再执行  zkServer.sh start 就可以了。

 

2、总结

主要还是因为在虚拟机中使用sh文件不是直接启动,除非配置环境变量到系统中,才可使用该目录下的sh文件或者是通过命令行中加一个./进行执行sh文件才可以;

配置环境变量:

在系统的配置文件中加入zookeeper的环境变量时,在命令行中即可直接执行zookeeper的sh文件,通过/etc/profile,打开该文件可以通过vim或者gedit或者vi
在末尾加入环境变量,具体配置环境变量如下:

export ZOO_HOME=zookeeper的目录路径
export PATH=$ZOO_HOME/bin:$PATH

 

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用Zookeeper时,经常会遇到一些常见的错误。其中一种报错是"Starting Zookeeper ...............FAILED TO START",这可能是由于某些原因导致Zookeeper启动失败。为了解决这个问题,可以查看错误日志信息来获取更多的细节。 另外,还有一种常见的报错是在单机连接Zookeeper时出现的问题。在Zookeeper 3.5.9版本中,有一个修改,将默认的端口号从2181修改为8080。因此,如果你的服务端口号与8080冲突了,就会出现报错。解决办法是修改服务的端口号,避免与Zookeeper默认端口号冲突。 除了以上两种常见的报错,还可能会有其他的报错信息,具体情况需要根据错误日志来判断。我建议你查看具体的错误日志,以获取更准确的故障诊断和解决方案。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Zookeeper异常解决方案](https://blog.csdn.net/weixin_48321993/article/details/125736109)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Zookeeper报错汇总](https://blog.csdn.net/qq_38196524/article/details/119833648)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值