zookeeper做成windows服务启动

zookeeper下载安装

首先去官网下载zookeeper
在这里插入图片描述

注意:zookeeper的安装路径一定不要有空格,
作者之前就是因为安装在D:\Program Files\zookeeper-3.4.10路径下,
路径中有空格(Program Files中间有空格)解决了很长时间,想尽各种办法,最后发现TMD的是空格原因

配置环境变量

添加ZOOKEEPER_SERVICE, ZOOKEEPER_HOME两个环境变量

//服务名称(不要有中文)
ZOOKEEPER_SERVICE:zkServer
//设置到zookeeper-3.4.10目录下 
ZOOKEEPER_HOME:D:\zookeeper-3.4.10

生成zoo.cfg

在zookeeper-3.4.10\conf目录下复制一份zoo_sample.cfg文件,并重命名为zoo.cfg
修改zoo.cfg文件里面的路径

//存放内存数据库快照的目录
dataDir=D:/zookeeper-3.4.10/data
//存放是事务日志目录
dataLogDir=D:/zookeeper-3.4.10/log

下载prunsrv

首先去Apache官网下载prunsrv
在这里插入图片描述
解压之后将prunmgr.exe和prunsrv.exe2个可执行文件复制到zookeeper的bin目录下

注意:64位机器用amd64/prunsrv.exe

在这里插入图片描述

新建install.bat

在zookeeper的bin目录下新建一个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%\bin\zkServer.cmd ^
        --StopPath=%ZOOKEEPER_HOME%\ ^
        --StopImage=%ZOOKEEPER_HOME%\bin\zkServerStop.cmd ^
        --StopMode=exe --StopTimeout=5 ^
        --LogPath=%ZOOKEEPER_HOME% --LogPrefix=zookeeper-wrapper ^
        --PidFile=zookeeper.pid --LogLevel=Info --StdOutput=auto --StdError=auto

新建zkServerStop.cmd

在zookeeper的bin目录下新建一个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

启动服务

已管理员运行cmd,进入D:/zookeeper-3.4.10/bin目录下运行install.bat,(注意:运行前请确保zookeeper服务已经关闭
下图表示服务已经正常启动
在这里插入图片描述

删除服务

已管理员运行cmd,输入sc delete zkServer回车即可删除服务。

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

珍妮玛•黛金

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值