Windows环境安装及启动Zookeeper详细历程(含闪退、找不到JAVA_Home及无限报错原因)

  • 详细历程
  • 1.jdk安装
  • 2.下载Zookeeper
  • 3.解压文件
  • 4.创建文件夹
  • 5.修改配置文件
  • 6.运行闪退问题
  • 7.Error: JAVA_HOME is not set
  • 8.无限报错
  • 9.启动成功


详细历程

1.jdk安装

      Zookeeper是依赖java环境的,我使用的jdk11版本,用jdk8应该都行,安装教程略,网上到处是。

2.下载Zookeeper

      官网链接:Zookeeper下载,链接里有所有版本,我使用的版本是3.4.12。

zookeeper单体启动 zookeeper windows启动_大数据

3.解压文件

      注意这个在windows上要解压两遍,最好把文件移动一下,别有重复文件夹,然后文件夹名字简化为zookeeper-3.4.12。

4.创建文件夹

       我们进入根目录,创建如图data和log的空文件夹:

zookeeper单体启动 zookeeper windows启动_zookeeper单体启动_02

5.修改配置文件

注意windows下分隔符是"\\",这里很多人会弄错):

dataDir=F:\\bigData\\zookeeper-3.4.12\\data
dataLogDir=F:\\bigData\\zookeeper-3.4.12\\log

zookeeper单体启动 zookeeper windows启动_大数据_03

6.运行闪退问题

      管理员运行bin目录下的zkServer.cmd和zkCli.cmd。如果有闪退,你需要检查:

  1. 运行zkCli.cmd闪退,请问你是否先运行了zkServer.cmd,顺序不能错。
  2. 第5步中zoo_sample.cfg文件有没有删除,他可能会默认读取该文件而忽略你的zoo.cfg。
  3. 添加的路径是否写对,要绝对路径,双反斜杠。

7.Error: JAVA_HOME is not set

      图忘截了,这个错误通常出现在zkCli.cmd窗口的第一行,要注意看。解决方法是,在zkEnv.cmd中的33行添加JAVA_HOME为你的jdk根目录路径(能看到bin目录的路径):

zookeeper单体启动 zookeeper windows启动_JAVA_04

因为文件中最后一行设置了JAVA为JAVA_HOME的\bin\java,所以不用set JAVA=xxx\bin\java了。(注意这里分隔符用单斜杠)

8.无限报错

不要以为出现Welcome to ZooKeeper就算成功了,如果出现如图错误Opening socket connection to server localhost/0:0:0:0:0:0:0:1:2181. Will not attempt to server…

zookeeper单体启动 zookeeper windows启动_JAVA_05

      这种情况解决方案是回到第5步配置zoo.cfg文件,有一行关键配置是server.1=hadoop01:2888:3888,请检查有没有配置这个(我找了好多教程才发现):

zookeeper单体启动 zookeeper windows启动_数据分析_06


      其中hadoop01是你主机名配置的映射(配置路径为C:\Windows\System32\drivers\etc\hosts)

zookeeper单体启动 zookeeper windows启动_JAVA_07

9.启动成功

      服务端截图:

zookeeper单体启动 zookeeper windows启动_zookeeper单体启动_08


zookeeper单体启动 zookeeper windows启动_数据分析_09


      客户端截图:

zookeeper单体启动 zookeeper windows启动_闪退_10