首先,搭建的效果图如下:
首先,下载windows版本的zk,自己可以去官网下载
第一步,在/conf下面建立zoo1.cfg、zoo2.cfg、zoo3.cfg三个文件,其中代码如下:
#这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
tickTime=2000
syncLimit=5
#Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
dataDir=E:/tools/zookeeper-3.4.5/data/1
#客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
clientPort=2181
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2830:3890
zoo1.cfg
#这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
tickTime=2000
syncLimit=5
#Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
dataDir=E:/tools/zookeeper-3.4.5/data/2
#客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
clientPort=2182
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2830:3890
zoo2.cfg
#这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
tickTime=2000
syncLimit=5
#Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
dataDir=E:/tools/zookeeper-3.4.5/data/3
#客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
clientPort=2183
server.1=127.0.0.1:2888:3888
server.2=127.0.0.1:2889:3889
server.3=127.0.0.1:2830:3890
zoo3.cfg
观察上述我们发现,拷贝一份配置,只需修改dataDir和clientPort即可!
第二步:建立所需的日志文件的存放目录
根据第一步中配置的dataDir目录分别建立对应的目录,其中每个目录下面需要建立一个myid文件,文件内容为分别为对应的1、2、3
第三步:启动脚本
我们打开bin目录下面的zkEnv.cmd文件,发现最后一行代码为:
set ZOOCFG=%ZOOCFGDIR%\zoo.cfg
由此我们可以看出,这里就是读配置的地方。我们分别改成我们第一步中的配置文件,如第一个zk节点,改动完保存一次,然后直接点击zkServer.cmd,此时我们发现zookeeper端口2181已经启动,再继续改成zoo2.cfg,再启动,依次类推。
注意:三个都未完全启动时,先启动的会一直报错,当全部节点启动完成时,才不会报错。
set ZOOCFG=%ZOOCFGDIR%\zoo1.cfg