WINDOWS下以后台服务的方式配置ZOOKEEPER

这里介绍在Windows环境下安装和配置ZooKeeper,仅适用于在开发环境下的单机调试场景,勿用于正式的生产环境中。重点是将ZooKeeper配置成Windows服务,开机就自动启动ZooKeeper服务,无需手动启动。当然,我也参考了网上的一些博客,但发现在Win10系统下停止服务时会报“发生系统错误 1067”的错误,感觉不爽,将停止服务脚本重写了一下,不会再出现1067的错误警告框。

ZOOKEEPER下载

官网下载地址:http://zookeeper.apache.org/releases.html#download

在我本机的开发环境下,我使用的ZooKeeper版本是:3.4.10。

ZOOKEEPER安装

1、在安装ZooKeeper之前,需要先安装JDK环境,并设置环境变量“JAVA_HOME”。

2、将下载到的ZooKeeper压缩包解压,并进入conf配置文件目录,例如:E:\dev-runtimes\zookeeper-3.4.10\conf。

3、复制“zoo_sample.cfg”,并重命名为“zoo.cfg”。

4、编辑“zoo.cfg”文件,设置ZooKeeper的数据存储目录(dataDir)和日志目录(dataLogDir),一般都设置在ZooKeeper的本目录里,如下:
 

dataDir=E:\\dev-runtimes\\zookeeper-3.4.10\\data
dataLogDir=E:\\dev-runtimes\\zookeeper-3.4.10\\log

注意路径中的双斜杠!

ZooKeeper的安装到此完成。

ZOOKEEPER服务配置

1、下载Apache出品的通用后台进程服务插件包:commons-daemon,下载地址:http://archive.apache.org/dist/commons/daemon/binaries/windows/,目前最新版本是1.1.0。

2、解压commons-daemon-1.2.4-bin-windows.zip,复制prunmgr.exe、prunsrv.exe到ZooKeepe安装路径的bin目录***意,如果你的操作系统是64位的,则复制amd64目录下的prunsrv.exe。

3、在ZooKeepe根目录下创建服务安装脚本:zk-service-install.bat
 

@echo off
 
REM #
REM # 说明:在Windows系统中安装ZooKeeper服务,实现以服务的方式启动ZooKeeper
REM # 注意:此脚本必须拷贝到ZooKeeper的根目录,否则运行报错
REM # ZK_HOME:			ZooKeeper安装目录
REM # ZK_DATA_DIR:		ZooKeeper数据目录
REM # ZK_SERVICE_NAME:	ZooKeeper服务名
REM #
REM # 服务启动命令:net start ZooKeeper
REM # 服务停止命令:net stop ZooKeeper
 
CD /d %~dp0
SET ZK_HOME=%CD%
SET ZK_DATA_DIR=%ZK_HOME%\data
SET ZK_LOG_DIR=%ZK_HOME%\log
SET ZK_SERVICE_NAME=ZooKeeper
if not exist %ZK_DATA_DIR% mkdir %ZK_DATA_DIR%
if not exist %ZK_LOG_DIR% mkdir %ZK_LOG_DIR%
 
:: 安装ZooKeeper的Windows服务
%ZK_HOME%\bin\prunsrv.exe "//IS//%ZK_SERVICE_NAME%" ^
--DisplayName="%ZK_SERVICE_NAME%" ^
--Description="%ZK_SERVICE_NAME%" ^
--Startup=auto ^
--StartMode=exe ^
--StartPath=%ZK_HOME% ^
--StartImage=%ZK_HOME%\bin\zkServer.cmd ^
--StopPath=%ZK_HOME%\ ^
--StopImage=%ZK_HOME%\zk-stop.bat ^
--StopMode=exe ^
--StopTimeout=5 ^
--LogPath=%ZK_LOG_DIR% ^
--LogPrefix=zookeeper-wrapper ^
--PidFile=zookeeper.pid ^
--LogLevel=Info ^
--StdOutput=auto ^
--StdError=auto
 
pause

4、在ZooKeepe根目录下创建服务卸载脚本:zk-service-remove.bat
 

@echo off
 
REM #
REM # 说明:卸载ZooKeeper的Windows服务
REM # 注意:此脚本必须拷贝到ZooKeeper的根目录,否则运行报错
REM #
 
CD /d %~dp0
%CD%\bin\prunsrv.exe //DS//ZooKeeper

5、在ZooKeepe根目录下创建服务停止脚本:zk-stop.bat
 

@echo off
 
REM #
REM # 说明:以杀进程的方式停止ZooKeeper服务
REM # 注意:此脚本必须拷贝到ZooKeeper的根目录,否则运行报错
REM #
 
setlocal
 
CD /d %~dp0
 
:: 以杀进程的方式停止ZooKeeper服务
SET /p zkPID=<%CD%\log\zookeeper.pid
taskkill /PID %zkPID% /T /F
 
endlocal

特别注意:上述三个bat脚本的字符编码要设置成“ANSI”编码,不然在执行脚本时会出现乱码。
6、以管理员身份运行脚本“zk-service-install.bat”,然后打开服务管理器,启动ZooKeeper服务

7、查看ZooKeeper的服务端口2182是否处于侦听状态

至此,将ZooKeeper安装成Windows系统服务的配置工作完成!

版权声明:原文为xht555原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/xht555/article/details/81571389

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值