CentOS8上的Zookeeper集群搭建

写在前面,从网上东拼西凑+踩坑记录,写的也许有错,麻烦提醒一下哈

可能是最好搭建的集群之一

Zookeeper最好搭建奇数台。如果集群内可用的机器>50%,对外就是可用的。

这里我搭3台,master,worker1,worker2;

1:Zookeeper的下载:

https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.6.1/apache-zookeeper-3.6.1-bin.tar.gz

用3.6.1的版本。

2:先在master上操作,解压
在这里插入图片描述

3:修改配置文件

先给zookeeper文件夹创建一个软链接:

ln -s apache-zookeeper-3.5.8-bin zookeeper

在解压后的文件中找到conf文件夹,将zoo_sample.cfg 重命名为zoo.cfg,

在这里插入图片描述

tickTime

心跳基本时间单位,毫秒级,ZK基本上所有的时间都是这个时间的整数倍。

initLimit

tickTime的个数,表示在leader选举结束后,followers与leader同步需要的时间,如果followers比较多或者说leader的数据灰常多时,同步时间相应可能会增加,那么这个值也需要相应增加。当然,这个值也是follower和observer在开始同步leader的数据时的最大等待时间(setSoTimeout)

syncLimit

tickTime的个数,这时间容易和上面的时间混淆,它也表示follower和observer与leader交互时的最大等待时间,只不过是在与leader同步完毕之后,进入正常请求转发或ping等消息交互时的超时时间。

dataDir

内存数据库快照存放地址,如果没有指定事务日志存放地址(dataLogDir),默认也是存放在这个路径下,建议两个地址分开存放到不同的设备上。

clientPort

配置ZK监听客户端连接的端口

server.serverid=host:tickpot:electionport

server:固定写法 serverid:每个服务器的指定ID(必须处于1-255之间,必须每一台机器不能重复) host:主机名
tickpot:心跳通信端口 electionport:选举端口

4:分发zookeeper包

回到上级目录,终端输入:

scp -r zookeeper/ hadoop@worker1:$PWD
scp -r zookeeper/ hadoop@worker1:$PWD

5:配置myid

分发好了之后,在每台服务器上新建刚刚配置好的dataDir=/home/hadoop/data/zookeeper文件夹。
新建完成后,再新增一个文件myid,里面的内容对应刚刚配置的server.1=192.168.188.101:2888:3888里server.*。比如我在192.168.188.101服务器上,也就是master,在dataDir路径下新增了一个文件叫做myid:
在这里插入图片描述
像这样,在每台服务器上都配置好。

6:配置zookeeper环境变量

在三台机器上,

vim ~/.bashrc

增加以下内容
在这里插入图片描述

然后 source ~/.bashrc 使修改生效。

7:启动zookeeper集群

在三台机器上,

zkServer.sh start 启动
zkServer.sh status 状态
zkServer.sh stop 停止

先启动一台试试:

在这里插入图片描述
只有一台,直接报错了。

再启动一台:
在这里插入图片描述

你这个worker怎么是leader啊(恼

启动完三台,回去看状态:

在这里插入图片描述
在这里插入图片描述
我master成follower了,成何体统!

全文完。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值