Zookeeper之Windows下安装

Posted zengnansheng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zookeeper之Windows下安装相关的知识,希望对你有一定的参考价值。

下载地址

http://zookeeper.apache.org/

http://www.apache.org/dyn/closer.cgi/zookeeper/

解压下载的zookeeper-xxx.tar.gz文件到D:DevSoftzookeeper-xxx

 

进入Conf目录 复制一份zoo_sample.cfg 并改名为 zoo.cfg,因为 Zookeeper在启动时会找这个文件作为默认配置文件

并修改zoo.cfg内容如下

tickTime=2000
initLimit=10
syncLimit=5
clientPort=2181
dataDir=D:/DevSoft/zookeeper-xxx/data
dataLogDir=D:/DevSoft/zookeeper-xxx/datalogs

 

tickTime:这个时间是作为Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。

dataDir:Zookeeper保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。

dataLogDir:Zookeeper 保存日志文件的目录。

clientPort:客户端连接Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。

clientPort默认是2181

 

启动zookeeper方法有2种

1.进入bin目录,直接双击zkServer.cmd启动,关闭窗口后,服务会关闭!

2.弄成windows服务方式设置开机自动启动

下载的Zookeeper是.cmd的批处理命令运行的,默认没有提供以windows服务的方式运行的方案

为此,本文下载prunsrv 来作为zookeeper的服务管理

下载地址  http://archive.apache.org/dist/commons/daemon/binaries/windows/

下载以commons-daemon-1.0.15-bin-windows.zip为例

 

解压后复制文件

复制 commons-daemon-1.0.15-bin-windows/amd64/prunsrv.exe 至 zookeeper-xxxin目录下 这是做服务的执行程序

复制 commons-daemon-1.0.15-bin-windows/prunmgr.exe 至 zookeeper-xxxin目录下 这是监控服务配置及运行的程序

 

配置环境变量

添加ZOOKEEPER_SERVICE, ZOOKEEPER_HOME两个环境变量

ZOOKEEPER_SERVICE:服务名称(不要有中文)比如zookeeper_service

ZOOKEEPER_HOME:设置到zookeeper-xxx根目录路径

 

在zookeeper-xxxin目录下新建一个zkServerStop.cmd文件 内容如下:

@echo off
setlocal
TASKLIST /svc | findstr /c:"%ZOOKEEPER_SERVICE%" > %ZOOKEEPER_HOME%zookeeper_svc.pid
FOR /F "tokens=2 delims= " %%G IN (%ZOOKEEPER_HOME%zookeeper_svc.pid) DO (
    @set zkPID=%%G
)
taskkill /PID %zkPID% /T /F
del %ZOOKEEPER_HOME%/zookeeper_svc.pid
endlocal

在zookeeper-xxxin目录下新建一个批处理安装文件install.bat 内容如下:

prunsrv.exe "//IS//%ZOOKEEPER_SERVICE%" ^
        --DisplayName="Zookeeper (%ZOOKEEPER_SERVICE%)" ^
        --Description="Zookeeper (%ZOOKEEPER_SERVICE%)" ^
        --Startup=auto --StartMode=exe ^
        --StartPath=%ZOOKEEPER_HOME% ^
        --StartImage=%ZOOKEEPER_HOME%inzkServer.cmd ^
        --StopPath=%ZOOKEEPER_HOME% ^
        --StopImage=%ZOOKEEPER_HOME%inzkServerStop.cmd ^
        --StopMode=exe --StopTimeout=5 ^
        --LogPath=%ZOOKEEPER_HOME% --LogPrefix=zookeeper-wrapper ^
        --PidFile=zookeeper.pid --LogLevel=Info --StdOutput=auto --StdError=auto

在zookeeper-xxxin目录下新建一个批处理安装文件uninstall.bat 内容如下:

prunsrv.exe "//DS//%ZOOKEEPER_SERVICE%

 

最后在cmd中以管理员身份运行install.bat就OK了 

然后进入windows服务管理,就可以看到相应的服务了,不过这时候还没启动,右击启动即可

 

启动后要检查 Zookeeper 是否已经在服务,可以通过 netstat – ano 命令查看是否有你配置的 clientPort 端口号在监听服务

比如 netstat -ano|findstr 2181

 

以上是关于Zookeeper之Windows下安装的主要内容,如果未能解决你的问题,请参考以下文章

Zookeeper 之Linux 安装启动

windows下安装zookeeper步骤(图文教程)

Windows环境下安装Zookeeper

Windows 环境下Zookeeper本地安装

windows下安装zookeeper 步骤

ZooKeeper安装及配置(Windows系统下)