ZooKeeper 集群配置详解

  1. 伪分布式单机配置
说明:
服务器名称与地址:集群信息(服务器编号,服务器地址,LF 通信端口,选举端口)
这个配置项的书写格式比较特殊,规则如下:server.N=YYY:A:B 其中,
N 表示服务器编号,
YYY 表示服务器的 IP 地址,
A 为 LF 通信端口,表示该服务器与集群中的 leader 交换的信息的端口。
B 为选举端口,表示选举新 leader 时服务器间相互通信的端口(当 leader 挂掉时,其余服务器会相互通信,选择出新的 leader)
一般来说,集群中每个服务器的 A 端口都是一样,每个服务器的 B 端口也是一样。
下面是一个集群的例子:
server.0=233.34.9.144:2008:6008
server.1=233.34.9.145:2008:6008
server.2=233.34.9.146:2008:6008
server.3=233.34.9.147:2008:6008
但是当所采用的为伪集群时,IP 地址都一样,只能是 A 端口和 B 端口不一样。
下面是一个伪集群的例子:
server.0=127.0.0.1:2008:6008
server.1=127.0.0.1:2007:6007
server.2=127.0.0.1:2006:6006
server.3=127.0.0.1:2005:6005
initLimit 是 Zookeeper 用它来限定集群中的 Zookeeper 服务器连接到 Leader 的时限。
syncLimit 限制了 follower 服务器与 leader 服务器之间请求和应答之间的时限。
  1. 配置步骤
2.1 复制 3 个 ZooKeeper
zookeeper-3.4.9.tar.gz 解压后拷贝到/myzookeeper 目录下并重新名为 zk01,再复制 zk01 形成 zk02、zk03,共计 3 份
2.2 新增目录
进入 zk01/02/03 分别新建文件夹,mydata、mylog
ZooKeeper 集群配置详解
文章图片

2.3 新建配置文件
分别进入 zk01-zk03 各自的 conf 文件夹新建 zoo.cfg
ZooKeeper 集群配置详解
文章图片

2.4 编辑配置文件
设置自己的数据和 log 路径
dataDir=/myzookeeper/zk01/mydata
dataLogDir=/myzookeeper/zk01/mylog
修改各自的 clientPort
在最后面添加 server 的列表
2.5 新增服务编号
在各自 mydata 下面创建 myid 的文件,在里面写入 server 的数字
ZooKeeper 集群配置详解
文章图片

2.6 启动服务
分别启动三个服务器
ZooKeeper 集群配置详解
文章图片

【ZooKeeper 集群配置详解】2.7 访问集群环境
zkCli 连接 server,带参数指定-server
ZooKeeper 集群配置详解
文章图片

2191/2192/2193 任意用客户端链接一台,会发现只需要有一个改变了,整个集群的内容自动一致性同步。
关键词:java培训

    推荐阅读