Docker 搭建Zookeeper 集群

Docker 搭建Zookeeper 集群

服务器版本 Centos 7.3,三台虚机
主机一:10.1.0.1
主机二:10.1.0.2
主机三:10.1.0.3

1.安装docker 服务,请参考一下地址

https://blog.csdn.net/zhouwang907680720/article/details/90478934

2.查找镜像

docker search zookeeper

3.下载官方zk 镜像

docker pull docker.io/zookeeper

4.查看镜像

docker image

5.创建关在目录和zk配置文件
    mkdir -p /data/zookeeper_data/conf
    mkdir -p /data/zookeeper_data/data
    cd /data/zookeeper_data/conf
    touch zoo.cfg
    vi zoo.cfg
6.zoo.cfg 配置文件如下:
    clientPort=2181
    dataDir=/data
    dataLogDir=/data/log
    tickTime=2000
    initLimit=5
    syncLimit=2
    autopurge.snapRetainCount=3
    autopurge.purgeInterval=0
    maxClientCnxns=60
    server.0=10.1.0.1:2888:3888
    server.1=10.1.0.2:2888:3888
    server.2=10.1.0.3:2888:3888
7.服务器10.1.0.1 创建并配置 myid
    cd /data/zookeeper_data/data
    touch myid
    echo 0 > myid
8.服务器10.1.0.2 创建并配置 myid
    cd /data/zookeeper_data/data
    touch myid
    echo 1 > myid
9.服务器10.1.0.3 创建并配置 myid
    cd /data/zookeeper_data/data
    touch myid
    echo 2 > myid
10.启动容器

命令说明

  • –network host :使用主机上的网络配置,解决容器跨主机通信问题
  • -v /data/zookeeper_data/data:/data:主机的数据目录挂载到容器/data下
  • -v /data/zookeeper_data/conf:/conf: 主机的配置目录挂载到容器的/conf下,容器内的zkServer.sh默认会读取/conf/zoo.cfg下的配置
    docker run  --network host -v /data/zookeeper_data/data:/data -v /data/zookeeper_data/conf:/conf --name zk-2181 -d docker.io/zookeeper
11.进入容器
    docker exec -it 容器id bash
12.检查zk启动状态

目前机器是从机状态,依次查看所有的机器状态,集群搭建完成

    bash-4.4# pwd
    /zookeeper-3.4.14
    bash-4.4# zkServer.sh status
    ZooKeeper JMX enabled by default
    Using config: /conf/zoo.cfg
    Mode: follower
13.zk启动日志查看
    docker logs 容器id|容器名称(zk-2181)
14. 注意的问题
    每台主机的2181/2888/3888端口要开放出来偶,小心防火墙
15.zk验证

idea 插件验证
Docker 搭建Zookeeper 集群_第1张图片

你可能感兴趣的:(遇见未知的分布式定时任务,Docker,Zookeeper)