zoukankan      html  css  js  c++  java
  • centos7 docker 安装 zookeeper 3.4.13 单机standalone

    假设一台单机主机的ip分别为:

    • 单机主机:192.168.0.200

    1. 查找zookeeper镜像:

    docker search zookeeper

    2. 下载官方zookeeper镜像:

    docker pull docker.io/zookeeper:3.4.13

    3. 下载完后可检查镜像:

    docker images

    4. 在单机主机上建立挂载目录和zookeeper配置文件:

    mkdir -p /usr/local/zookeeper/conf
    mkdir -p /usr/local/zookeeper/data cd /usr/local/zookeeper/conf touch zoo.cfg vi zoo.cfg

    单机主机上的zoo.cfg配置信息如下:

    复制代码
    复制代码
    clientPort=2181
    dataDir=/data
    dataLogDir=/data/log
    tickTime=2000
    initLimit=5
    syncLimit=2
    autopurge.snapRetainCount=3
    autopurge.purgeInterval=0
    maxClientCnxns=60

    复制代码
    复制代码

    5. 单机主机启动容器:

    docker run --privileged=true --network host -v /usr/local/zookeeper/data:/data -v /usr/local/zookeeper/conf:/conf --name zookeeper2181 -d docker.io/zookeeper:3.4.13

    命令说明:

    • --network host: 使用主机上的网络配置,如果不用这种模式,而用默认的bridge模式,会导致容器跨主机间通信失败
    • -v /usr/local/zookeeper/data:/data:主机的数据目录挂载到容器/data下
    • -v /usr/local/zookeeper/conf:/conf: 主机的配置目录挂载到容器的/conf下,容器内的zkServer.sh默认会读取/conf/zoo.cfg下的配置

    都启动完成后,单机主机的2181端口开放出来了(注意,这种配置通过127.0.0.1:2181不能访问zookeeper,只能访问192.168.0.200:2181)

    6. 检查容器的启动情况:

    docker exec -it zookeeper2181 /bin/bash

    进入容器内部后,其工作目录为:/zookeeper-3.4.13(版本依据镜像而定),执行zookeeper检查:

    复制代码
    复制代码

    [root@hserver2 data]# docker exec -it zookeeper2181 /bin/bash
    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: leader
    bash-4.4#

    复制代码
    复制代码

    可以看到这个容器目前为leader状态,至此集群已启动完成。

    7. 若启动失败了,通过如下命令观察zookeeper的启动日志:

    docker logs zookeeper2181

    内容示例如下:

    复制代码

    [root@hserver2 data]# docker logs zookeeper2181
    ZooKeeper JMX enabled by default
    Using config: /conf/zoo.cfg
    log4j:WARN No appenders could be found for logger (org.apache.zookeeper.server.quorum.QuorumPeerConfig).
    log4j:WARN Please initialize the log4j system properly.
    log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

    复制代码
  • 相关阅读:
    linux进程间通信之消息队列
    本地安装discuz x2.5(论坛站)程序
    缩小IO/CPU瓶颈:linux平台加速编译速度的几种方法
    php mcrypt
    Nginx工作原理和优化、漏洞。
    Linux下两种TCP网络服务器实现方式:循环服务&并发服务
    version `GLIBC_2.14' not found 解决方法.
    Flex Ant自动构建
    函数传指针和传引用
    JEECG 列表行编辑模式下实现文本的xheditor富文本框编辑器
  • 原文地址:https://www.cnblogs.com/xiaohanlin/p/10405522.html
Copyright © 2011-2022 走看看