Docker搭建Zookeeper集群(-v挂载配置文件)
1,安装docker(略)。2,启动docker 服务service docker start3,查找搜索镜像docker search zookeeper4,下载镜像docker pull zookeeper5,主机上建立挂载目录和zookeeper配置文件:clientPort=2181dataDir=/datadataLogDir=/data/lo...
·
1,安装docker(略)。
2,启动docker 服务
service docker start
3,查找搜索镜像
docker search zookeeper
4,下载镜像
docker pull zookeeper
5,主机上建立挂载目录和zookeeper配置文件:
clientPort=2181
dataDir=/data
dataLogDir=/data/log
tickTime=2000
initLimit=5
syncLimit=2
autopurge.snapRetainCount=3
autopurge.purgeInterval=0
maxClientCnxns=60
server.0=192.168.90.128:2888:3888
server.1=192.168.90.129:2888:3888
server.2=192.168.90.130:2888:3888
分别设置每台机器的server id
cd /data/zookeeper_data/data
touch myid
echo 0 > myid
注意id分别要对应配置文件中的id
6,在三台主机上依次启动容器:
docker run --network host -v /data/zookeeper_data/data:/data -v /data/zookeeper_data/conf:/conf --name zookeeper_1 -d docker.io/zookeeper
命令说明:
- --network host: 使用主机上的网络配置,如果不用这种模式,而用默认的bridge模式,会导致容器跨主机间通信失败
- -v /data/zookeeper_data/data:/data:主机的数据目录挂载到容器/data下
- -v /data/zookeeper_data/conf:/conf: 主机的配置目录挂载到容器的/conf下,容器内的zkServer.sh默认会读取/conf/zoo.cfg下的配置
都启动完成后,每台主机的2181/2888/3888端口都会开放出来了
7, 检查容器的启动情况:
docker exec -it 容器id /bin/bash
[release@sh-lbs02 data]$ sudo docker exec -it 456 /bin/bash
[sudo] password for release:
bash-4.4# pwd
/zookeeper-3.4.13
bash-4.4# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /conf/zoo.cfg
Mode: follower
bash-4.4#
8,查看zookeeper启动日志
docker logs 容器id/容器名称
更多推荐
已为社区贡献1条内容
所有评论(0)