前言:
当我们准备学习 Dubbo 的时候,肯定会听说 zookeeper 这个中间件。zookeeper 很强大可以做服务注册和发现,也可以做分布式锁。
今天我们就先来学习如何搭建 zookeeper 集群,由于电脑配置一般,所以暂时先搭建伪集群。
开始搭建
首先我们构建 /usr/local/docker/zookeeper/ 目录
sudo mkdir -p /usr/local/docker/zookeeper/
进入文件夹中
cd /usr/local/docker/zookeeper/
接下来,我们创建一个 docker-compost.yml 文件
sudo vi docker-compose.yml
将如下内容复制进 yml 文件中
version: '3.5'
services:
zoo1:
image: zookeeper
restart: always
hostname: zoo1
ports:
- 2181:2181
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
zoo2:
image: zookeeper
restart: always
hostname: zoo2
ports:
- 2182:2181
environment:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
zoo3:
image: zookeeper
restart: always
hostname: zoo3
ports:
- 2183:2181
environment:
ZOO_MY_ID: 3
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
启动 docker-compose
sudo docker-compose up -d
结果如下:
接下来,我们要看看 zookeeper 集群是否启动成功!进入三个容器中进行查看
sudo docker exec -it 容器id bash
进去后,我们需要执行一个命令查看
./bin/zkServer.sh status
结果如下:
说明该容器是 leader。接下来我们退出容器
exit
按照上面的方法继续进去其他容器,结果如下:
到此,说明我们的 zookeeper 集群已经搭建完毕!
相关配置文件上传自 github 和 gitee
github:
https://github.com/LuckyToMeet-Dian-N/DevelopmentUtils/tree/master/docker/zookeeper
gitee:
https://gitee.com/reway_wen/DevelopmentUtils/tree/master/docker/zookeeper
有兴趣的同学可以关注公众号一起学习!