软件安装路径 E:\zookeeper
端口规划 2192
安装描述
新建software文件夹,将安装包拷贝到该文件夹下
JDK版本为jdk-8u131-windows-x64.exe,点击exe安装包;
在弹出的窗口,点击下一步;
根据需要修改安装路径,点击下一步;
安装JRE,点击下一步;
完成安装。
环境变量配置
打开控制面板-点击系统-高级系统设置-进入高级选项卡-环境变量-新建系统变量值:如下
变量名:JAVA_HOME
变量值:E:\Java\jdk1.8.0_131(按实际安装路径),如图下
新建系统变量CLASSPATH:如下
变量名:CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
如图下
修改PATH变量值
在PATH变量值前面增加JAVA变量值为:
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
如下图,点击确定。
下载apache-zookeeper-3.6.1-bin.tar.gz安装包
下载地址:https://zookeeper.apache.org/releases.html
1、上传apache-zookeeper-3.6.1-bin.tar.gz安装包到服务器;
2、解压安装包变重命名为zookeeper;
3、进入zookeeper目录,新建data文件夹和log文件夹;
4、将conf目录下的zoo_sample.cfg文件,复制一份,重命名为zoo.cfg;
5、修改zoo.cgf配置文件(注意路径格式配置)
dataDir=E:/zookeeper/datadataLogDir=E:/zookeeper/logclientPort=2192
6、参数注释
tickTime:心跳时间,zk里使用的基本时间单位
initLimit:leader和follower之间最长的心跳时间,心跳时间为initLimittickTime秒
syncLimit:leader和follower之间发送消息,请求和应答的最大时间长度,时间长度为syncLimittickTime秒
maxClientCnxns:客户端连接上限
7、配置zk环境变量
打开控制面板-点击系统-高级系统设置-进入高级选项卡-环境变量-新建系统变量值:如下
变量名:ZOOKEEPER_HOME
变量值:E:\zookeeper(按实际安装路径),如下图
修改PATH变量值
在PATH变量值前面增加ZOOKEEPER_HOME变量值为:
%ZOOKEEPER_HOME%\bin;
如下图,点击确定。
8、服务启动
(1)进入E:\zookeeper\bin,双击zkServer.cmd启动zk服务
(2)使用组合键Shift+Ctrl+鼠标右键,选择“在此处打开命令行容器”,在弹出的cmd窗口运行如下命令,测试zk服务是否正常:
E:\zookeeper\bin> zkCli.cmd -server localhost:2192出现如下提示内容,表示zk服务启动正常Connecting to localhost:2192………Welcome to ZooKeeper!……….
(3)服务启动异常调试
编辑zkServer.cmd启动文件,在末尾倒数第二行添加关键字pause,排查启动异常(注意:待异常解决后,请删除pause,保存配置后双击启动)。
pauseendlocal
2.3 添加zookeeper开机自启动一、通过服务注册zookeeper为windows服务
1、下载zookeeper服务插件commons-daemon-1.0.10-bin-windows.zip
下载地址:http://archive.apache.org/dist/commons/daemon/binaries/windows/
将logfile "server_log.txt"修改logfile "E:\redis\log\server_log.txt"
2、解压commons-daemon-1.0.10-bin-windows.zip将prunmgr.exe 与amd64下的prunsrv.exe复制到 zookeeper的bin路径下
3、在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
4、在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
4、新增ZOOKEEPER_SERVICE环境变量
变量名:ZOOKEEPER_SERVICE
变量值:zkserver如下图
5、运行bat脚本注册系统服务
在bin路径下,使用组合键Shift+Ctrl+鼠标右键,选择“在此处打开命令行容器”,在弹出的cmd窗口运行如下命令,注册系统服务:
E:\zookeeper\bin> install.bat
6、卸载服务
方法一:使用系统自带的sc命令删除
E:\zookeeper\bin> sc delete zkserver
方法二:通过删除注册表来卸载对应服务
开始→运行(Windows+R)输入regedit 然后依次打开
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services删除对应的服务
二、通过vbs脚本添加到开机自启动
1、编写启动脚本zookeeper-start.bat
%ZOOKEEPER_HOME%\bin\zkServer.cmd
2、添加开机启动,运行shell:Common Startup 打开启动文件夹
3、在弹出的文件夹里面创建zookeeper-start.vbs脚本(注意核对bat脚本的存放路径,编码使用ANSI)
createobject("wscript.shell").run "E:\\zookeeper\\zookeeper-start.bat",o
2.4 启动与停止zk服务 方法一:
启动:进入E:\zookeeper\bin,双击zkServer.cmd启动zk服务;
停止:进入E:\zookeeper\bin,双击zkServerStop.cmd启动zk服务。
方法二:
启动:双击zookeeper-start.bat脚本启动zk服务
停止:开始→运行(Windows+R)输入netstat -ano|findstr 2192
tasklist --列出所有运行的服务tasklist /svc --查看服务service服务taskkill /pid 2136 --将进程pid号2136杀掉taskkill /f /pid 2136 --强制杀掉pid号2136
方法三:
启动:开始→运行(Windows+R)输入services.msc 选中Zookeeper服务,点击左侧的“启动”,并通过命令netstat -ano|findstr 2192查看服务进程
E:\zookeeper\bin> netstat -ano|findstr 2192TCP 0.0.0.0:2192 0.0.0.0:0 LISTENING 2136 TCP [::]:2192 [::]:0 LISTENING 2136
停止:开始→运行(Windows+R)输入services.msc 选中Zookeeper服务,点击左侧的“停止”
注意:停止时报如下提示是正常,点击“确定”关闭窗口即可
限制zookeeper客户端的最大连接数。
zookeeper\conf\zoo.cfgmaxClientCnxns=60
3.2 修改默认2181端口 默认情况下,zookeeper默认使用2181端口,请修改默认监听端口,如本文档使用的是2192
zookeeper\conf\zoo.cfgclientPort=2192
3.3 添加服务端口防火墙策略 打开【控制面板】>【所有控制面板项】>【Windows 防火墙】>【高级设置】
1)点击新建规则;
2)选择规则类型,点击“下一步”;
3)根据程序开放端口情况填写,如本文的redis开放7369端口,点击“下一步”;
4)默认选项,点击“下一步”;
5)配置文件,根据实际情况选项,点击“下一步”;
6)填写规则名称与规则描述,方便用户识别,点击“完成“。
1、在3.3章节基础上操作添加指定IP防火墙策略,选中需要配置的规则,右击选择属性
2、在作用域,远程IP地址,选择添加指定IP策略
3、可以根据需要,填写某个具体IP地址,或是IP段等策略
4、应用并确定,添加指定IP防火墙策略成功
1、通过zkCli.cmd 进入zookeeper客户端进入E:\zookeeper\binE:\zookeeper\bin> zkCli.cmd -server localhost:21922、使用auth方式加密,添加用户名和密码addauth digest crm:crm#pwd3、授予/dubbo auth权限setAcl /dubbo auth:crm:crm#pwd:rwadc4、查看目录加密后的权限getAcl /dubbo
3.6 日志清理 建议设置对zookeeper日志的定期清理功能,在配置文件中清理日志策略,如下所示:
zookeeper\conf\zoo.cfgautopurge.snapRetainCount=10autopurge.purgeInterval=24参数说明:autopurge.snapRetainCount=10 //保留多少个快照autopurge.purgeInterval=24 //多少小时清理一次
3.7 定期升级4. 结束