1. 我们这里使用三台机器搭建ZooKeeper服务器集群。三台机器上都安装好Java和ZooKeeper。
2. 修改zoo.cfg配置信息
2.1. zookeeper的三个端口作用
- 2181: 对client端提供服务
- 2888: 集群内机器通信使用
- 3888: 选举leader使用
2.2. 按 server.id = ip:port:port修改集群配置文件。
2.3. 三台虚拟机zoo.cfg文件末尾添加配置
3. 根据id和对应的地址分别配置myid
3.1. 在我们的数据目录下新建myid文件: /usr/local/apache-zookeeper-3.7.0-bin/data
3.2. IP为192.168.25.133的机器上配置myid
3.3. IP为192.168.25.135的机器上配置myid
3.4. IP为192.168.25.138的机器上配置myid
4. 启动集群
4.1. 分别启动三台机器上的ZooKeeper
4.2. 查看IP为192.168.25.133的机器上zk的运行状态
4.3. 查看IP为192.168.25.135的机器上zk的运行状态
4.4. 查看IP为192.168.25.138的机器上zk的运行状态
4.5. 最后显示集群搭建成功。Mode: leader代表主节点, follower代表从节点, 一主二从。
5. 静态配置文件和动态配置文件
5.1. zoo.cfg配置文件实际上可以拆开成静态配置文件和动态配置文件。动态配置文件包含dynamic的字样。我们可以把配置信息都配置在zoo.cfg文件中, 集群启动成功后会自动拆分。
5.2. zoo.cfg保存静态的配置。
5.3. zoo.cfg.dynamic.id保存集群中动态变化的配置。