一.前言
请准备多台Centos7系统,及其zookeeper离线包。我这边主要用三台进行讲解。
二. Zookeeper 安装
1.拉取zookeeper镜像
docker pull registry.docker-cn.com/library/zookeeper:3.6.1
2.用于挂载zookeeper数据文件
mkdir -p /home/zookeeper/data
3.用于挂载zookeeper配置文件
mkdir -p /home/zookeeper/conf
4.vi /home/zookeeper/conf/zoo.cfg
#zoo.cfg的内容 tickTime=2000 initLimit=10 syncLimit=5 dataDir=/data dataLogDir=/logs clientPort=2181 server.0=192.168.153.133:2888:3888 server.1=192.168.153.137:2888:3888 server.2=192.168.153.138:2888:3888
5.每台机器zookeeper/data 创建myid文件,一一对应server0,1,2 序号
6.用于挂载zookeeper日志文件
mkdir -p /home/zookeeper/logs
7.启动命令
docker run --privileged=true --network host --name zookeeper -p 2181:2181 -v /home/zookeeper/data:/data -v /home/zookeeper/conf/zoo.cfg:/conf/zoo.cfg -v /home/zookeeper/logs:/logs -d zookeeper
命令说明
(1)--network host: 使用主机上的网络配置,如果不用这种模式,而用默认的bridge模式,会导致容器跨主机间通信失败 (2)-v /usr/local/zookeeper/data:/data:主机的数据目录挂载到容器/data下 (3)-v /usr/local/zookeeper/conf:/conf: 主机的配置目录挂载到容器的/conf下,容器内的zkServer.sh默认会读取/conf/zoo.cfg下的配置
二. 注意事项
dataDir=/data dataLogDir=/data/logs
删除下面两个目录的version-2:
删除下面两个目录的version-2:
然后重新启动即可