单机搭建三节点ZooKeeper集群(伪集群)

怼烎@ 2023-01-02 11:26 311阅读 0赞

文章目录

    • 背景
    • 安装
      • zookeeper 版本
      • 安装步骤

背景

由于测试服务器有限,只有一个台服务器,但是ZooKeeper集群最少要三个节点,所以打算在单机搭建三个节点的ZooKeeper集群

安装

zookeeper 版本

3.4.14

安装步骤

  1. 下载 zookeeper

    wget http://archive.apache.org/dist/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz

  2. 解压安装 zookeeper

    tar -zxvf zookeeper-3.4.14.tar.gz

  3. 拷贝zookeeper
    因为需要部署三个zookeeper,我们拷贝三分zookeeper

    cp -R zookeeper-3.4.14 zookeeper_01

    cp -R zookeeper-3.4.14 zookeeper_02

    cp -R zookeeper-3.4.14 zookeeper_03

  4. 配置
    进入zookeeper_01,创建data和logs目录

    cd zookeeper_01
    mkdir data
    mkdir logs

进入data目录下,创建myid文件
在每个zookeeper的 data 目录下创建一个 myid 文件,内容分别是1、2、3 。这个文件就是记录每个服务器的ID

  1. echo 1 >myid

进入conf目录,复制zoo_sample.cfg文件并重命名为zoo.cfg

  1. cp zoo_sample.cfg zoo.cfg

修改zoo.cfg

  1. # 单位时间,其他时间都是以这个倍数来表示
  2. tickTime=2000
  3. # 节点初始化时间,10倍单位时间
  4. initLimit=10
  5. # 心跳最大延迟周期
  6. syncLimit=5
  7. # 数据目录
  8. dataDir=/root/zookeeper/zookeeper_01/data
  9. # 日志目录
  10. dataLogDir=/root/zookeeper/zookeeper_01/logs
  11. # 端口
  12. clientPort=2181
  13. #集群配置
  14. server.1=127.0.0.1:2888:3888
  15. server.2=127.0.0.1:2889:3889
  16. server.3=127.0.0.1:2890:3890
  • 每个节点都需要配置集群中所有节点信息,使用server.id=ip:port:port配置
  • 其中id,是上面myid文件中配置的id;ip是节点的ip,第一个port是节点之间通信的端口,第二个port用于选举leader节点。
  • 如果是真实集群环境,上面两个端口,每个节点都可以配置成2888和3888。因为我这里在同一台机器上,端口不能冲突,只能使用不同的
  • 另外两个节点也同样操作,创建data目录和logs目录、创建myid文件,里面配置节点id、修改zoo.cfg,注意myid 分别为 2、3

三个节点的配置如下
/root/zookeeper/zookeeper_01/conf/zoo.cfg

  1. tickTime=2000
  2. initLimit=10
  3. syncLimit=5
  4. dataDir=/root/zookeeper/zookeeper_01/data
  5. dataLogDir=/root/zookeeper/zookeeper_01/logs
  6. clientPort=2181
  7. server.1=127.0.0.1:2888:3888
  8. server.2=127.0.0.1:2889:3889
  9. server.3=127.0.0.1:2890:3890

/root/zookeeper/zookeeper_02/conf/zoo.cfg

  1. tickTime=2000
  2. initLimit=10
  3. syncLimit=5
  4. dataDir=/root/zookeeper/zookeeper_02/data
  5. dataLogDir=/root/zookeeper/zookeeper_02/logs
  6. clientPort=2182
  7. server.1=127.0.0.1:2888:3888
  8. server.2=127.0.0.1:2889:3889
  9. server.3=127.0.0.1:2890:3890

/root/zookeeper/zookeeper_03/conf/zoo.cfg

  1. tickTime=2000
  2. initLimit=10
  3. syncLimit=5
  4. dataDir=/root/zookeeper/zookeeper_03/data
  5. dataLogDir=/root/zookeeper/zookeeper_03/logs
  6. clientPort=2183
  7. server.1=127.0.0.1:2888:3888
  8. server.2=127.0.0.1:2889:3889
  9. server.3=127.0.0.1:2890:3890
  1. 启动
    进入zookeeper的bin目录,执行启动脚本启动

    ./zkServer.sh start

三个节点依次启动

  1. 查看节点启动状态

    ./zkServer.sh status

在这里插入图片描述
可以看到查看的节点是 follower

发表评论

表情:
评论列表 (有 0 条评论,311人围观)

还没有评论,来说两句吧...

相关阅读