windows下zookeeper集群搭建

搭建kafka集群

一.要先搭建zookeeper集群

搭建伪集群来熟悉搭建步骤,也就是采用一台电脑和多台电脑的区别。

1.步骤

下载

zookeeper下载:https://downloads.apache.org/zookeeper/

这里选用的是windows下zookeeper集群搭建

我这里下载的是zookeeper-3.5.7,下载-bin.tar.gz这种文件,适合windows

下载下来之后解压,并在复制两份,共三份,并且三分名字不一样。
zookeeper的部署个数最好为奇数,因为里面有个选举机制,少数服从多数。偶数不利于选举。zookeeper集群的机制是只要超过半数的节点运行,集群就能正常提供服务。

windows下zookeeper集群搭建

配置修改

打开第一个apache-zookeeper-3.5.7-bin-1里面进入conf文件夹里面,把zoo_sample.cfg复制一份,并重新命名为zoo.cfg.
同样,apache-zookeeper-3.5.7-bin-2,apache-zookeeper-3.5.7-bin-3也这样进行修改。

windows下zookeeper集群搭建

创建文件夹zookeeperdata,并在里面创建以下文件夹,用来存放zookeeper产生的日志和数据。

windows下zookeeper集群搭建

在dataone文件夹内创建文件myid,这个文件没有后缀名,打开cmd

windows下zookeeper集群搭建

创建之后输入1

datatwo与datathree也是一样的操作,在myid里输入分别为2,3,这里的数字123是与apache-zookeeper-3.5.7-bin-1、2、3里的\cofig\zoo.cfg里的配置有关,下面就讲到了

打开zoo.cfg,修改这两个地方

windows下zookeeper集群搭建

tickTime:这个时间是作为 Zookeeper 服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个 tickTime 时间就会发送一个心跳。
dataDir:顾名思义就是 Zookeeper 保存数据的目录,默认情况下,Zookeeper 将写数据的日志文件也保存在这个目录里。
clientPort:这个端口就是客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客户端的访问请求。
initLimit:集群中的follower服务器(F)与leader服务器(L)之间初始连接时能容忍的最多心跳数(tickTime的数量)
syncLimit:集群中的follower服务器与leader服务器之间请求和应答之间能容忍的最多心跳数(tickTime的数量)。

这里server.1,server.2,server.3,server后面的1,2,3便是对应myid里面的1,2,3
server.A=B:C:D;其中 A 是一个数字,表示这个是第几号服务器;B 是这个服务器的 ip 地址;C 表示的是这个服务器与集群中的 Leader 服务器交换信息的端口;D 表示的是万一集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是用来执行选举时服务器相互通信的端口。如果是伪集群的配置方式,由于 B 都是一样,所以不同的 Zookeeper 实例通信端口号不能一样,所以要给它们分配不同的端口号。

同一IP上搭建多个节点的集群时,必须要注意端口问题,端口必须不一致才行;在剩下的两个zoo.cgf里面改成clientport=2182与clientport=2183,其余都一样

运行

然后运行zkServer,发现闪退

windows下zookeeper集群搭建

于是打开它的命令行,在最后一行添加pause,再次运行

windows下zookeeper集群搭建

再次运行的结果为:

windows下zookeeper集群搭建

错误原因是找不到zoo.cfg配置文件

于是编辑zkEnv.cmd

windows下zookeeper集群搭建

然后再运行zkServer

windows下zookeeper集群搭建

成功!

分别成功运行 三个apache-zookeeper-3.5.7-bin-1,apache-zookeeper-3.5.7-bin-2,apache-zookeeper-3.5.7-bin-3下的zkServer,集群搭建成功

多IP多节点:

将zookeeper拷贝到每个节点一份。

多IP多节点与单IP多节点搭建过程基本一致,上述过程不再重复描述,仅重点说一个地方:server的IP地址、端口为真实即可。

注意:zk的部署个数最好为基数,ZK集群的机制是只要超过半数的节点OK,集群就能正常提供服务。只有ZK节点挂得太多,只剩一半或不到一半节点能工作,集群才失效。

windows下zookeeper集群搭建

上一篇:Linux和Windows的差异?0基础需知!


下一篇:Docker 安装成功(win10家庭版)