搭建ZooKeeper分布式集群

下载ZooKeeper后,解压到相应的路径

#解压到/usr/local中,注意ZooKeeper版本
tar -zxvf apache-zookeeper-3.5.10-bin.tar.gz -C /usr/local

将文件夹名改为zookeeper

#进入到/usr/local中
cd /usr/local/
sudo mv ./apache-zookeeper-3.5.6-bin/ ./zookeeper

在ZooKeeper安装目录下新建文件dataDir,用于存放ZooKeeper相关数据

cd /usr/local/zookeeper
mkdir dataDir

在ZooKeeper安装目录下的conf文件夹中新建配置文件zoo.cfg,输入内容

tickTime=2000
initLimit=5
syncLimit=2
dataDir=/usr/local/zookeeper/dataDir
cilentPort=2181

server.1=centos01:2888:3888
server.2=centos02:2888:3888
server.3=centos03:2888:3888

说明:

tickTime:Zookeeper使用的基本时间,服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个tickTime时间就会发送一个心跳,时间单位为毫秒。

initLimit:集群中的Follower服务器初始化连接Leader服务器时能等待的最大心跳数(连接超时时长)。默认为10,如果经过10个心跳之后Follower服务器仍然没有收到Leader服务器的返回信息,则连接失败。设置为5,tickTime为2000,则连接超时时长为5乘以2000=10000毫秒=10秒。

syncLimit:集群中的Follwer服务器与Leader服务器之间发送消息以及请求或者应答时所能等待的最多心跳数。设置为2,tickTime为2000,做多心跳时长2乘以2000=4000毫秒=4秒。

dataDir:ZooKeeper存储数据的目录。

cilentPort:客户端连接ZooKeeper服务器的端口。ZooKeeper会监听这个端口,接收服务器的请求。

server.id=host:port1:port2:标识不同的ZooKeeper服务器。ZooKeeper可以从server.id=host:port1:port2中读取相关信息。其中,id值必须在整个集群中是唯一的,且大小在1到255之间,host是服务器的名称或者IP地址,第一个端口号(port1)是Leader端口,即该服务器作为Leader是供Follower连接的端口,第二个端口号(port2)是选举端口,即选举Leader服务器时供其他Follower连接的端口。

在配置文件zoo.cfg的参数dataDir指定的目录下新建以改名为myid的文件

这个文件仅包含一行内容,即当前服务器的id值,与参数server.id中的id值相同,就是数字1

复制ZooKeeper安装文件到其他主机

#@hadoop为用户名,不是真正的hadoop
scp -r zookeeper/ hadoop@centos02:/usr/local/
scp -r zookeeper/ hadoop@centos03:/usr/local/

修改myid

修改centos02节点中的myid文件中的值为2。

修改centos03节点中的myid文件中的值为3。

启动ZooKeeper集群

分别进入每个节点的ZooKeeper安装目录,启动各个节点的ZooKeeper,命令:

bin/zkServer.sh start

分别在各个节点上查看ZooKeeper服务的状态,命令:

bin/zkServer.sh status

如果启动状态发现启动失败,那是因为系统没有关闭防火墙,导致ZooKeeper集群间连接不成功,因此需要关闭防火墙。

systemctl stop firewalld.service
systemctl disable firewalld.service

再次查看状态后,centos01应该是:

JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: follower

centos02应该是:

JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: leader

centos03应该是:

JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Mode: follower

集群启动成功,搭建完成。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值