欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Zookeeper分布式集群搭建(六)

程序员文章站 2022-06-21 17:06:42
...

分布式部

规划:在129,130,131服务器上面分布部署zookeeper

准备工作

  • 准备三台服务器,使用的是VMware Workstation这个虚拟机并复制三份centos7的镜像
  • 安装jdk
  • 下载zookeeper,并上传到linux服务器上
  • 解压到指定目录:
[aaa@qq.com software]$ tar -zxvf zookeeper-3.4.10.tar.gz -C /opt/module/

配置

把129中的zookeeper文件同步到130,131服务器上面

[aaa@qq.com module]$ xsync zookeeper-3.4.10/
配置服务器编号

(1)在/opt/module/zookeeper-3.4.10/这个目录下创建zkData

[aaa@qq.com zookeeper-3.4.10]$ mkdir -p zkData

(2)在/opt/module/zookeeper-3.4.10/zkData目录下创建一个myid的文件

[aaa@qq.com zkData]$ touch myid

(3)编辑myid文件

在文件中添加与server对应的编号:1

(4)拷贝配置好的zookeeper到其他机器上

xsync的使用参考https://blog.csdn.net/BushQiang/article/details/103772688

[aaa@qq.com zkData]$ xsync myid

并分别在hadoop130、hadoop131上修改myid文件中内容为2、3

配置zoo.cfg文件

  • (1)重命名/opt/module/zookeeper-3.4.10/conf这个目录下的zoo_sample.cfg为zoo.cfg
[aaa@qq.com conf]$ mv zoo_sample.cfg zoo.cfg
  • (2)打开zoo.cfg文件
    修改数据存储路径配置

dataDir=/opt/module/zookeeper-3.4.10/zkData

增加如下配置

#######################cluster##########################
server.1=hadoop129:2888:3888
server.2=hadoop130:2888:3888
server.3=hadoop131:2888:3888
  • (3)同步zoo.cfg配置文件
[aaa@qq.com conf]$ xsync zoo.cfg
  • (4)配置参数解读
    server.A=B:C:D
A是一个数字,表示这个是第几号服务器;
集群模式下配置一个文件myid,这个文件在dataDir目录下,这个文件里面有一个数据就是A的值,Zookeeper启动时读取此文件,拿到里面的数据与zoo.cfg里面的配置信息比较从而判断到底是哪个server。
B是这个服务器的ip地址;
C是这个服务器与集群中的Leader服务器交换信息的端口;
D是万一集群中的Leader服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口。

集群操作

(1)分别启动129,130,131上面的Zookeeper

[aaa@qq.com zookeeper-3.4.10]$ bin/zkServer.sh start
[aaa@qq.com zookeeper-3.4.10]$ bin/zkServer.sh start
[aaa@qq.com zookeeper-3.4.10]$ bin/zkServer.sh start

查看状态

129开始启动的时候,由于是集群是3台服务器,只有半数以上(2)才可以正常运行一台是不行的,130启动后集群可以正常运行,它的myid比较大,所以它是Leader,131启动后它就只能是follower
Zookeeper分布式集群搭建(六)