一、单机安装
1.官网下载zookeeper-3.4.12
2.解压到D:\Program\zookeeper-3.4.12
3.将\conf\zoo_sample.cfg复制,命名为zoo.cfg
4.在zookeeper下新建目录data、log作为数据和日志存放地
5.修改配置zoo.cfg,dataDir,dataLogDir指向data和log
dataDir=D:\\Program\\zookeeper-3.4.12\\data
dataLogDir=D:\\Program\\zookeeper-3.4.12\\log
6.进入到bin目录,cmd,并且启动zkServer.cmd,将会启动一个java进程
D:\Program\zookeeper-3.4.12\bin >zkServer.cmd
7.启动后,jps命令可以看到QuorumPeerMain的进程
D:\Program\zookeeper-3.4.12\bin>jps
15648 QuorumPeerMain
6336
7312 Callable_Test
8780 Jps
D:\Program\zookeeper-3.4.12\bin>
8.zkCli.cmd启动客户端运行查看一下
D:\Program\zookeeper-3.4.12\bin>zkCli.cmd -server 127.0.0.1:2181
二、配置解释
tickTime:基本时间单位(ms),作为Zookeeper 主从之间或客户端与服务器之间维持心跳的时间间隔,也就是每隔tickTime时间就会发送一个心跳。
dataDir:Zookeeper 保存数据的目录,默认情况下,Zookeeper将写数据的日志文件也保存在这个目录里。
dataLogDir:Zookeeper保存日志文件的目录,默认情况下没有此项
clientPort:客户端连接Zookeeper服务器的端口,Zookeeper会监听这个端口,接受客户端的访问请求。
initLimit:心跳间隔数,启动zookeeper时,从实例同步到主实例的初始化连接时间限制,超出时间限制则连接失败(以tickTime为时间单位),总的时 间长度就是5 * 2000=10秒
syncLimit:心跳间隔数,zookeeper正常运行时,主从节点之间同步数据的时间限制,若超过这个时间限制,那么随从实例将会被丢弃;总的时间长度就是5 * 2000=10秒
server.A=B:C:D:配置集群时使用,其中A是一个数字,表示这个是第几号服务器;B是这个服务器的ip;C表示的是此服务器与集群中的Leader服务器交换信息的端口;D表示的是万一集群中的Leader服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口。