Docker安装Zookeeper教程(超详细)

06-30 1628阅读

生命无罪,健康万岁,我是laity。

我曾七次鄙视自己的灵魂:

第一次,当它本可进取时,却故作谦卑;

第二次,当它在空虚时,用爱欲来填充;

第三次,在困难和容易之间,它选择了容易;

第四次,它犯了错,却借由别人也会犯错来宽慰自己;

第五次,它自由软弱,却把它认为是生命的坚韧;

第六次,当它鄙夷一张丑恶的嘴脸时,却不知那正是自己面具中的一副;

第七次,它侧身于生活的污泥中,虽不甘心,却又畏首畏尾。

Docker安装ZK

  • 查看本地镜像和检索拉取Zookeeper 镜像
    # 查看本地镜像
    docker images
    # 检索ZooKeeper 镜像
    docker search zookeeper
    # 拉取ZooKeeper镜像最新版本
    docker pull zookeeper:latest
    # 我使用的版本
    docker pull zookeeper:3.5.7
    
    • 创建ZooKeeper 挂载目录(数据挂载目录、配置挂载目录和日志挂载目录)

      mkdir -p /mydata/zookeeper/data # 数据挂载目录

      mkdir -p /mydata/zookeeper/conf # 配置挂载目录

      mkdir -p /mydata/zookeeper/logs # 日志挂载目录

      • 启动ZooKeeper容器
        docker run -d --name zookeeper --privileged=true -p 2181:2181  -v /mydata/zookeeper/data:/data -v /mydata/zookeeper/conf:/conf -v /mydata/zookeeper/logs:/datalog zookeeper:3.5.7
        
        • 参数说明
          -e TZ="Asia/Shanghai" # 指定上海时区 
          -d # 表示在一直在后台运行容器
          -p 2181:2181 # 对端口进行映射,将本地2181端口映射到容器内部的2181端口
          --name # 设置创建的容器名称
          -v # 将本地目录(文件)挂载到容器指定目录;
          --restart always #始终重新启动zookeeper,看需求设置不设置自启动
          
          • 添加ZooKeeper配置文件,在挂载配置文件目录(/mydata/zookeeper/conf)下,新增zoo.cfg 配置文件,配置内容如下:
            dataDir=/data  # 保存zookeeper中的数据
            clientPort=2181 # 客户端连接端口,通常不做修改
            dataLogDir=/datalog
            tickTime=2000  # 通信心跳时间
            initLimit=5    # LF(leader - follower)初始通信时限
            syncLimit=2    # LF 同步通信时限
            autopurge.snapRetainCount=3
            autopurge.purgeInterval=0
            maxClientCnxns=60
            standaloneEnabled=true
            admin.enableServer=true
            server.1=localhost:2888:3888;2181
            
            • 进入容器内部,验证容器状态
              # 进入zookeeper 容器内部
              docker exec -it zookeeper /bin/bash
              # 检查容器状态
              docker exec -it zookeeper /bin/bash ./bin/zkServer.sh status
              # 进入控制台
              docker exec -it zookeeper zkCli.sh
              
              • 安装ZooInspector客户端连接

                下载地址:https://issues.apache.org/jira/secure/attachment/12436620/ZooInspector.zip;

                命令:java -jar zookeeper-dev-ZooInspector.jar

                遇到的问题:WARNING: IPv4 forwarding is disabled. Networking will not work

                解决办法:
                # vi /etc/sysctl.conf
                或者
                # vi /usr/lib/sysctl.d/00-system.conf
                添加如下代码:
                    net.ipv4.ip_forward=1
                重启network服务
                # systemctl restart network
                

                测试

                docker exec -it zookeeper zkCli.sh
                

                Docker安装Zookeeper教程(超详细)

                关于zookeeper操作详细介绍的文章

                Docker安装Zookeeper集群

                • 准备三台机器互相ping通
                • 配置文件zoo.cfg
                  cd  /mydata/zookeeper/conf
                  vim zoo.cfg
                  # 三台机器分别执行添加 
                  clientPort=2181
                  dataDir=/data
                  dataLogDir=/data/log
                  tickTime=2000
                  initLimit=5
                  syncLimit=2
                  autopurge.snapRetainCount=3
                  autopurge.purgeInterval=0
                  maxClientCnxns=60
                  server.1=node1:2888:3888
                  server.2=node2:2888:3888
                  server.3=node3:2888:3888
                  
                  • 设置myid标识
                    echo 1 > /mydata/zookeeper/conf/myid
                    1、2、3 三台机器分别执行
                    zookeeper选举也会根据myid的大小进行投票master
                    
VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]