zookeeper 集群部署

zookeeper 集群部署

参考:

1. 集群环境

  • Zookeeper 版本: https://dlcdn.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
  • Java 版本: https://download.oracle.com/otn/java/jdk/8u321-b07/df5ad55fdd604472a86a45a217032c7d/jdk-8u321-linux-x64.tar.gz
zk 节点ipOS
zk1(vm1)10.23.243.224CentOS Linux release 8.4.2105
zk2(vm2)10.23.147.1CentOS Linux release 8.4.2105
zk3(vm3)10.23.126.115CentOS Linux release 8.4.2105

2. 步骤

2.1 安装 jdk1.8

  • 下载网址

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-l9FIpkdy-1643125671031)(zookeeper%E5%AE%89%E8%A3%85%E9%83%A8%E7%BD%B2.assets/image-20201103203544237.png)]

  • 依次执行

    tar -zxvf jdk-8u321-linux-x64.tar.gz
    sudo mv jdk1.8.0_321/ /usr/lib
    cd  /usr/lib && sudo mkdir jdk && sudo mv jdk1.8.0_321/ jdk
    
  • 配置 Java 环境

    sudo vim /etc/profile 
    

    末尾添加下列几行:

    export JAVA_HOME=/usr/lib/jdk/jdk1.8.0_321
    export JRE_HOME=${JAVA_HOME}/jre    
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib    
    export PATH=${JAVA_HOME}/bin:$PATH 
    

    激活配置:

    source /etc/profile
    
  • 配置软链接

    软连接相当于windows系统中的快捷键,部分软件可能会从/usr/bin目录下查找Java,因此添加该软连接防止其他软件查找不到

    sudo update-alternatives --install /usr/bin/java  java  /usr/lib/jdk/jdk1.8.0_321/bin/java 300   
    sudo update-alternatives --install /usr/bin/javac  javac  /usr/lib/jdk/jdk1.8.0_321/bin/javac 300 
    
  • 测试

    java -version
    

    请添加图片描述

2.2 安装 zookeeper

1) 下载解压
  • 版本 zookeeper 3.4.6

    cd /root/zookeeper 
    wget https://dlcdn.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz
    
  • 修改zk1, zk2, zk3 主机/etc/hosts文件

    10.23.243.224 vm1
    10.23.147.1   vm2
    10.23.126.115 vm3
    
2) 配置
  • 数据存储目录

    tar -zxf  apache-zookeeper-3.7.0-bin.tar.gz && cd apache-zookeeper-3.7.0-bin
    mkdir /root/zookeeper/apache-zookeeper-3.7.0-bin/data # 数据文件存储位置
    touch /root/zookeeper/apache-zookeeper-3.7.0-bin/data/myid # myid文件
    
  • 配置文件

    vim /root/zookeeper/apache-zookeeper-3.7.0-bin/conf/zoo.cfg
    

    写入以下内容

    tickTime=2000   # 心跳周期为100ms
    initLimit=10    #  follower与leader之间建立连接后允许进行同步的最长时间
    syncLimit=5     # follower和leader之间发送消息,请求和应答的最大时间长度
    dataDir=/root/zookeeper/apache-zookeeper-3.7.0-bin/data #  数据快照的路径,dataLogDir为存放日志的路径
    clientPort=2181 # zookeeper服务端口
    
    # 节点配置格式: server.id=ip:port1:port2
    # server.id 的 id 为一个数字,表示 zk 进程的id,这个id也是data目录下myid文件的内容
    # host 是该zk进程所在的IP地址
    # port1 表示follower和leader交换消息所使用的端口
    # port2 表示选举leader所使用的端口
    server.1=10.23.243.224:2888:3888
    server.2=10.23.147.1:2888:3888
    server.3=10.23.126.115:2888:3888
    
  • 复制到另外两个节点

    scp  -r  /root/zookeeper/ root@10.23.147.1:/root/
    scp  -r  /root/zookeeper/ root@10.23.126.115:/root/
    
  • 配置节点 id

    echo 1 >> /root/zookeeper/apache-zookeeper-3.7.0-bin/data/myid # zk1 上执行
    echo 2 >> /root/zookeeper/apache-zookeeper-3.7.0-bin/data/myid # zk2 上执行
    echo 3 >> /root/zookeeper/apache-zookeeper-3.7.0-bin/data/myid # zk3 上执行
    

3. 启动并验证集群

  • 在zk1, zk2, zk3同时执行

    /root/zookeeper/apache-zookeeper-3.7.0-bin/bin/zkServer.sh start 
    
  • 验证zookeeper是否启动

    jps # 如果有QuorumPeerMain这个进程,则说明该节点上zookeeper进程启动了
    
  • 连接zookeeper服务端

    /root/zookeeper/apache-zookeeper-3.7.0-bin/bin/zkCli.sh  -server 127.0.0.1:2181
    

    请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值