Zookeeper 集群伪分布 在 Windows下的安装

1、安装JDK

 

2、下载 zookeeper

使用清华大学开源软件镜像站 :https://mirrors.cnnic.cn/apache/zookeeper/

 

3、zookeeper 集群伪分布式的配置

解压 zookeeper-3.5.2-alpha.tar.gz 到zookeeper-3.5.2_cluster 目录 ,

并创建dataDir 目录,在dataDir 目录下创建zoo_1_data、zoo_1_log、zoo_2_data、zoo_2_log、zoo_3_data、zoo_3_log 目录。

如图所示:

Zookeeper 集群伪分布 在 Windows下的安装_第1张图片

 

3.1 在conf 目录下,创建 zoo-1.cfg,其内容如下:

 

# The number of milliseconds of each tick  心跳间隔 毫秒每次
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting anacknowledgement
syncLimit=5

# the directory where the snapshot isstored.  
# 镜像数据位置
dataDir=D:\\developeSoft\\zookeeper\\zookeeper-3.5.2_cluster\\dataDir\\zoo_1_data

#日志位置
dataLogDir=D:\\developeSoft\\zookeeper\\zookeeper-3.5.2_cluster\\dataDir\\zoo_1_log


# ZK 服务器端的监听端口,对应分别:2181  2182  2183
# 目录下创建3份,zoo-1.cfg、zoo-2.cfg、zoo-3,cfg 记得改参数
clientPort=2181

# 伪集群   
# 2887 是server 之间通讯的
# 3887 是当集群中的 Leader 服务器挂了,用来执行选举时服务器相互通信的端口  
# 同时加入其他两个服务的地址和端口信息  
server.1=127.0.0.1:2887:3887
server.2=127.0.0.1:2888:3888
server.3=127.0.0.1:2889:3889

 

 

3.2 在conf 目录下,但创建 zoo-2.cfg,其内容如下:

 

# The number of milliseconds of each tick  心跳间隔 毫秒每次
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting anacknowledgement
syncLimit=5

# the directory where the snapshot isstored.  
# 镜像数据位置
dataDir=D:\\developeSoft\\zookeeper\\zookeeper-3.5.2_cluster\\dataDir\\zoo_2_data

#日志位置
dataLogDir=D:\\developeSoft\\zookeeper\\zookeeper-3.5.2_cluster\\dataDir\\zoo_2_log

# ZK 服务器端的监听端口,对应分别:2181  2182  2183
# 目录下创建3份,zoo-1.cfg、zoo-2.cfg、zoo-3,cfg 记得改参数
clientPort=2182

# 伪集群   
# 2887 是server 之间通讯的
# 3887 是当集群中的 Leader 服务器挂了,用来执行选举时服务器相互通信的端口  
# 同时加入其他两个服务的地址和端口信息  
server.1=127.0.0.1:2887:3887
server.2=127.0.0.1:2888:3888
server.3=127.0.0.1:2889:3889

 

 

 

3.3 在conf 目录下,但创建 zoo-3.cfg,其内容如下:

 

 

# The number of milliseconds of each tick  心跳间隔 毫秒每次
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting anacknowledgement
syncLimit=5

# the directory where the snapshot isstored.  
# 镜像数据位置
dataDir=D:\\developeSoft\\zookeeper\\zookeeper-3.5.2_cluster\\dataDir\\zoo_3_data

#日志位置
dataLogDir=D:\\developeSoft\\zookeeper\\zookeeper-3.5.2_cluster\\dataDir\\zoo_3_log

# ZK 服务器端的监听端口,对应分别:2181  2182  2183
# 目录下创建3份,zoo-1.cfg、zoo-2.cfg、zoo-3,cfg 记得改参数
clientPort=2183

# 伪集群,加入其他两个服务的地址和端口信息     
# 2887 是server 之间通讯, 即 leader 与 follower 之间的通读
# 3887 是当集群中的 Leader 服务器挂了,用来执行选举时服务器相互通信的端口   
server.1=127.0.0.1:2887:3887
server.2=127.0.0.1:2888:3888
server.3=127.0.0.1:2889:3889

 

配置文件创建完成后,如图所示:

Zookeeper 集群伪分布 在 Windows下的安装_第2张图片

 

3.4 修改 zkServer.cmd 

 

3.4.1 将zkServer.cmd 改为zkServer-1.cmd,内容修改为:

 

set ZOOCFG=..\conf\zoo-1.cfg

即:

Zookeeper 集群伪分布 在 Windows下的安装_第3张图片

 

3.4.2 将zkServer-1.cmd 改为zkServer-2.cmd,内容修改为:

set ZOOCFG=..\conf\zoo-2.cfg

 

 

3.4.3 将zkServer-1.cmd 改为zkServer-2.cmd,内容修改为:

 

set ZOOCFG=..\conf\zoo-3.cfg

Zookeeper 集群伪分布 在 Windows下的安装_第4张图片

 

3.5  创建 myid 文件

在 zoo_1_data、zoo_2_data、zoo_3_data 目录下,分别创建相同名字的 myid 文件,并分别myid 文件中写入数字:1,2、3。

这个的数字是唯一的,在1-255 之间,用来表示自身的id。

 

Zookeeper 集群伪分布 在 Windows下的安装_第5张图片

 

 

3.6 启动

在bin目录下 打开多个CMD窗口,分别启动zkServer-1.cmd、zkServer-2.cmd、zkServer-3.cmd

 

3.7 报错

2017-11-07 17:35:17,270 [myid:1] - WARN  [WorkerSender[myid=1]:QuorumCnxManager@459] - Cannot open channel to 2 at election address /127.0.0.1:3888
java.net.ConnectException: Connection refused: connect

Zookeeper 集群伪分布 在 Windows下的安装_第6张图片

 

依次启动时、会有错误信息,因为你启动server1 的时候 ,没有找到server2 和server3 服务,等后面3个服务都启动起来就没问题了。

 

 

 

你可能感兴趣的:(综合运用,Zookeeper)