Zookeeper集群搭建

做~自己de王妃 提交于 2021-02-02 05:26:41

本章主要讲解Zookeeper集群的搭建,搭建方式采用Docker容器的方式。

开始之间先讲解几个要点:

  1. Zookeeper文件名称为zoo.cfg

  2. 需要一个myid文件,里面只有一个数字代表serverId,该文件的位置由zoo.cfg中的dataDir属性指定

我们下面搭建一个三个节点的Zookeeper集群节点主机名称分别为zoo1,zoo2,zoo3

1.准备一份配置文件zoo.cfg,内容如下:

  
    
  
  
  
  1. tickTime=2000

  2. dataDir=/var/lib/zookeeper/data

  3. dataLogDir=/var/lib/zookeeper/datalog

  4. clientPort=2181

  5. initLimit=5

  6. syncLimit=2

  7. server.1=zoo1:2888:3888

  8. server.2=zoo2:2888:3888

  9. server.3=zoo3:2888:3888

2.准备三分serverId文件

  
    
  
  
  
  1. echo 1 > /usr/local/docker_app/zookeeper/zoo1/data/myid

  2. echo 2 > /usr/local/docker_app/zookeeper/zoo2/data/myid

  3. echo 3 > /usr/local/docker_app/zookeeper/zoo3/data/myid

3.创建docker私有网络

  
    
  
  
  
  1. docker network create zknet --subnet=172.19.0.0/16

4.在/usr/local/docker_app/zookeeper准备一个hosts文件,内容如下:

  
    
  
  
  
  1. 172.19.0.2 zoo1

  2. 172.19.0.3 zoo2

  3. 172.19.0.4 zoo3

5.启动三个Zookeeper节点

  
    
  
  
  
  1. # 启动zoo1节点

  2. docker run -d \

  3. -v /usr/local/docker_app/zookeeper/zoo1/data:/var/lib/zookeeper/data \

  4. -v /usr/local/docker_app/zookeeper/zoo1/datalog:/var/lib/zookeeper/datalog \

  5. -v /usr/local/docker_app/zookeeper/conf/zoo.cfg:/conf/zoo.cfg \

  6. -v /usr/local/docker_app/zookeeper/hosts:/etc/hosts \

  7. -p 2181:2181 \

  8. --hostname=zoo1 \

  9. --name=zookeeper1 \

  10. --net zknet \

  11. --ip 172.19.0.2 \

  12. zookeeper

  13. # 启动zoo2节点

  14. docker run -d \

  15. -v /usr/local/docker_app/zookeeper/zoo2/data:/var/lib/zookeeper/data \

  16. -v /usr/local/docker_app/zookeeper/zoo2/datalog:/var/lib/zookeeper/datalog \

  17. -v /usr/local/docker_app/zookeeper/conf/zoo.cfg:/conf/zoo.cfg \

  18. -v /usr/local/docker_app/zookeeper/hosts:/etc/hosts \

  19. -p 2182:2181 \

  20. --hostname=zoo2 \

  21. --name=zookeeper2 \

  22. --net zknet \

  23. --ip 172.19.0.3 \

  24. zookeeper

  25. # 启动zoo3节点

  26. docker run -d \

  27. -v /usr/local/docker_app/zookeeper/zoo3/data:/var/lib/zookeeper/data \

  28. -v /usr/local/docker_app/zookeeper/zoo3/datalog:/var/lib/zookeeper/datalog \

  29. -v /usr/local/docker_app/zookeeper/conf/zoo.cfg:/conf/zoo.cfg \

  30. -v /usr/local/docker_app/zookeeper/hosts:/etc/hosts \

  31. -p 2183:2181 \

  32. --hostname=zoo3 \

  33. --name=zookeeper3 \

  34. --net zknet \

  35. --ip 172.19.0.4 \

  36. zookeeper

6.集群启动成功查看节点状态

  
    
  
  
  
  1. # 进入容器

  2. docker exec -it zookeeper1 bash

  3. zkServer.sh status


本文分享自微信公众号 - shysh95(shysh95)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!