ZooKeeper----ZooKeeper 集群搭建

本文详细介绍ZooKeeper集群的安装与配置流程,包括软件下载、解压、配置修改及环境变量设置等关键步骤,同时提供了启动命令及验证安装成功的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、ZooKeeper 软件安装须知 

鉴于 ZooKeeper 本身的特点,服务器集群的节点数推荐设置为奇数台。我这里我规划为三台, 为别为 hadoop01,hadoop02,hadoop03 

2、具体安装 

2.1、上网找 ZooKeeper 的软件安装,并下载下来 

下载地址:http://mirrors.hust.edu.cn/apache/ZooKeeper/

版本号:ZooKeeper-3.4.7.tar.gz 

2.2、解压安装到自己的目录 

tar -zxvf ZooKeeper-3.4.7.tar.gz -C xxx/     ---这里的xxx是自己的软件安装目录,这里

ZooKeeper 运行最重要的四个东西 

2.3、修改配置文件 

cd conf/

mv zoo_sample.cfg zoo.cfg 

 

 

配置参数解析: 

tickTime

基本事件单元,以毫秒为单位。它用来控制心跳和超时,默认情况下最小的会话超时时 间为两倍的 tickTime。 

initLimit

此配置表示,允许 follower (相对于 leader 而言的“客户端”)连接并同步到 leader 的 初始化连接时间,它以 tickTime 的倍数来表示。当超过设置倍数的 tickTime 时间,则 连接失败。 
 
syncLimit

此配置表示, leader 与 follower 之间发送消息,请求和应答时间长度。如果 follower 在 设置的时间内不能与 leader 进行通信,那么此 follower 将被丢弃。 
 
dataDir

存储内存中数据库快照的位置 注意:如果需要保留日志信息,那么可以考虑配置 dataLogDir 的位置,这个位置就是日 志的存储目录。通常情况下是分开存储的。并且应该谨慎地选择日志存放的位置,使用 专用的日志存储设备能够大大地提高系统的性能,如果将日志存储在比较繁忙的存储设 备上,那么将会在很大程度上影响系统的性能。 
 
clientPort

监听客户端连接的端口,默认是 2181,最好不要修改 

最后再增加 ZooKeeper 的服务器列表信息,格式为:

server.id=主机名:心跳端口:选举端口

例子:server.1=hadoop01:2888:3888

其中 id 虽然可以随便写,但是有两点要求,第一不能重复,第二范围是 1-255,并且对 应服务器列表上还得存在对应的 id 文件,具体看下面操作 

然后分发至其他服务器:

[hadoop @hadoop01 zkdata]# scp -r ZooKeeper-3.4.7/ hadoop@hadoop02:$PWD

[hadoop @hadoop01 zkdata]# scp -r ZooKeeper-3.4.7/ hadoop @hadoop03:$PWD 

然后是最重要的步骤,一定不能忘了。 去你的各个 ZooKeeper 服务器节点,新建目录 dataDir=/home/hadoop/apps/zkdata,这个 目录就是你在 zoo.cfg 中配置的 dataDir 的目录,建好之后,在里面新建一个文件,文件 名叫 myid,里面存放的内容就是服务器的 id,就是 server.1=hadoop01:2888:3888 当中的 id, 就是 1,那么对应的每个服务器节点都应该做类似的操作 

拿服务器 hadoop01 举例:

[hadoop @hadoop01 zkdata]# mkdir /home/hadoop/apps/zkdata

[hadoop @hadoop01 zkdata]# echo 1 > myid

当以上所有步骤都完成时,意味着我们 ZooKeeper 的配置文件相关的修改都做完了。

2.4、启动软件,并验证安装是否成功 

先配置环境变量 

vi ~/.bashrc 

增加两行: 

export ZOOKEEPER_HOME=/home/hadoop/apps/ZooKeeper-3.4.7 

export PATH=$PATH:$ZOOKEEPER_HOME/bin 

保存退出,执行 source ~/.bashrc 
 
启动命令:zkServer.sh start 注意:虽然我们在配置文件中写明了服务器的列表信息,但是,我们还是需要去每一台服务 器去启动,不是一键启动集群模式 
 
然后检查在每台服务器之间是不是都启动了有 QuorumPeerMain 进程,并检查每台服务器的 角色,使用命令: 

jps 检查 QuorumPeerMain 进程

zkServer.sh status   查看服务器角色(leader or follower) 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值