windows Zookeeper本地服务化
Posted xhj123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windows Zookeeper本地服务化相关的知识,希望对你有一定的参考价值。
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
在windows环境使用Zookeeper时,需要在命令行调用zookeeper提供的相关的cmd脚本,这样要经常进行zookeeper服务的开启和关闭会比较麻烦,所以这篇博客提供了将Zookeeper注册成windows服务的方法,接下来进行方法的演示:
1.下载并安装zookeeper,下载prunsrv,并解压,这里提供了我在csdn上传的zookeeper和prunsrv的网址:
https://download.csdn.net/download/qq_28169869/10880956
https://download.csdn.net/download/qq_28169869/10880975
2.找到commons-daemon-1.0.15-bin-windows目录下的prunsrv.exe,复制到zookeeper目录的bin文件夹下,如果windows系统是64位的,复制 amd64 文件夹下的prunsrv.exe。
3.找到commons-daemon-1.0.15-bin-windows目录下的prunmgr.exe,复制到zookeeper目录的bin文件夹下。
4.配置环境变量 ZOOKEEPER_SERVICE,值为zookeeper_service,zookeeper_service是给zookeeper服务起的服务名;配置环境变量ZOOKEEPER_HOME,值为zookeeper的目录。
5.在zookeeper的bin目录下添加zkServerStop.cmd和install.bat,zkServerStop.cmd用来停止zookeeper的windows服务。
@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
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
从install.bat中可以看到,安装服务使用bin中的zkServer.cmd和zkServerStop.cmd,用来启动和停止zookeeper的服务,可以根据需要对这两个文件进行配置。
9.在服务中启动zookeeper服务,我在zkServer.cmd中使用了zoo.cfg的配置,客户端端口使用的是2180。
tickTime=2000 initLimit=10 syncLimit=5 dataDir=D:\\zookeeper\\server\\zookeeper-data\\server dataLogDir=D:\\zookeeper\\server\\zookeeper-log\\server clientPort=2180 server.1=localhost:2890:3890
启动zookeeper的windows服务,然后打开一个cmd,转到zookeeper的bin目录,输入 zkCli.cmd -timeout 100 -server 127.0.0.1:2180,使用zookeeper提供的客户端连接zookeeper服务。
这样就可以正常连接到zookeeper服务了,可以用命令对zookeeper节点进行查看和操作
以上是关于windows Zookeeper本地服务化的主要内容,如果未能解决你的问题,请参考以下文章
(转)mac 搭建基于RTMP的本地Nginx服务器报错homebrew/nginx was deprecated. This tap is now empty as all its form(代码片
Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtime(代码片