使用docker快速搭建zookeeper集群

环境准备

节点名称 ip地址
node1 192.168.130.20
node2 192.168.130.19
node2 192.168.130.21

安装docker

创建挂载目录

创建配置目录和数据目录(3个节点都执行)

mkdir -p /root/zookeeper/conf

mkdir -p /root/zookeeper/data

mkdir -p /root/zookeeper/log

写入配置

  1. 创建配置文件(3个节点都执行)
cd /root/zookeeper/conf
vi  zoo.cfg

写入如下内容

dataDir=/data
dataLogDir=/datalog
tickTime=2000
initLimit=5
syncLimit=2
autopurge.snapRetainCount=3
autopurge.purgeInterval=0
maxClientCnxns=60
standaloneEnabled=true
admin.enableServer=true
clientPort=2181
server.1=192.168.130.20:2888:3888
server.2=192.168.130.19:2888:3888
server.3=192.168.130.21:2888:3888
  1. 写入id到/data/myid文件
    node1
echo 1 >/root/zookeeper/data/myid

node2

echo 2 >/root/zookeeper/data/myid

node3

echo 3 >/root/zookeeper/data/myid

依次启动节点

node1

docker rm -f zk-node1 
docker run -d --network=host --privileged=true -v /root/zookeeper/data:/data -v /root/zookeeper/conf:/conf -v /root/zookeeper/log:/datalog --name zk-node1 --restart always zookeeper:3.4.13

node2

docker rm -f zk-node2
docker run -d --network=host --privileged=true -v /root/zookeeper/data:/data -v /root/zookeeper/conf:/conf -v /root/zookeeper/log:/datalog --name zk-node2 --restart always zookeeper:3.4.13

node3

docker rm -f zk-node3
docker run -d --network=host --privileged=true -v /root/zookeeper/data:/data -v /root/zookeeper/conf:/conf -v /root/zookeeper/log:/datalog --name zk-node3 --restart always zookeeper:3.4.13

查看zookeeper状态

docker exec -it zk-node1 sh
/zookeeper-3.4.13 # cd bin
/zookeeper-3.4.13/bin # ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /conf/zoo.cfg
Mode: follower

依次进去zk-node2 zk-node3 查看zk状态是否正常

猜你喜欢

转载自blog.csdn.net/kk3909/article/details/111937681