第5章 选举模式和ZooKeeper的集群安装
5-1 集群的一些基本概念
zk集群搭建
选举模式图例:

最少的集群需要3个节点,以此类推3、5、7、9…
5-2 单机伪分布式安装zookeeper集群
单机下的集群,就是zk的port不一样
配置伪分布式:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| $ cp zookeeper zookeeper02 -rf $ cp zookeeper zookeeper03 -rf
clientPort=2181 dataDir=/usr/local/zookeeper/dataDir dataLogDir=/usr/local/zookeeper/dataLogDir
server.1=localhost:2888:3888 server.2=localhost:2889:3889 server.3=localhost:2890:3890
|
测试:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| $ sudo ./zookeeper/bin/zkServer.sh restart $ sudo ./zookeeper02/bin/zkServer.sh restart $ sudo ./zookeeper03/bin/zkServer.sh restart
$ zkCli.sh -server localhost:2181
$ create /node01 data-01
$ zkCli.sh -server localhost:2182 $ ls /
[node01, zookeeper]
|
5-3 三台物理机(虚拟机)安装zookeeper集群
真实环境下:ip不同,端口号可以保持一致
搭建步骤:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
clientPort=2181 dataDir=/usr/local/zookeeper/dataDir dataLogDir=/usr/local/zookeeper/dataLogDir
server.1=10.211.55.6:2888:3888 server.2=10.211.55.12:2888:3888 server.3=10.211.55.13:2888:3888
|
测试:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| $ ./bin/zkServer.sh restart
$ ./bin/zkServer.sh status
Mode: follower
Mode: leader
Mode: follower
$ ./bin/zkCli.sh -server 10.211.55.12:2181 $ create /node02 data-02
$ ./bin/zkCli.sh -server 10.211.55.6:2181 $ ls / [node01, zookeeper, node02]
|
5-4 测试集群角色以及选举
上一节测试了同步,接下来验证选举
master挂掉,slave会竞争选举,成为新的master
测试:
选举算法???