Zookeeper集群搭建步骤有哪些
导读:1. 准备工作 搭建Zookeeper集群前需完成以下基础准备: 服务器要求:至少3台Linux服务器(建议奇数台,如3/5台),确保服务器之间网络互通; Java环境:Zookeeper依赖Java运行环境,需提前安装JDK 1.8及以...
1. 准备工作
搭建Zookeeper集群前需完成以下基础准备:
- 服务器要求:至少3台Linux服务器(建议奇数台,如3/5台),确保服务器之间网络互通;
- Java环境:Zookeeper依赖Java运行环境,需提前安装JDK 1.8及以上版本,并配置
JAVA_HOME
环境变量; - 安装包下载:从Apache官网下载Zookeeper稳定版本(如3.7.0),并上传至所有服务器的指定目录(如
/opt
)。
2. 解压与目录配置
- 解压Zookeeper安装包:使用
tar -zxvf apache-zookeeper-x.x.x-bin.tar.gz -C /opt/
命令解压至目标目录(如/opt/zookeeper
); - 创建数据与日志目录:在每台服务器上创建数据存储目录(
dataDir
,如/var/lib/zookeeper/data
)和日志目录(dataLogDir
,如/var/log/zookeeper
),用于存储集群数据和运行日志。
3. 配置文件修改
- 复制配置模板:将
conf/zoo_sample.cfg
复制为conf/zoo.cfg
(核心配置文件); - 修改关键参数:编辑
zoo.cfg
,添加或调整以下内容:tickTime=2000
:基本时间单位(毫秒),用于心跳和超时计算;initLimit=5
:Follower与Leader初始化同步的最长时间(tickTime
的倍数,如5×2000ms=10s);syncLimit=2
:Leader与Follower同步消息的最长时间(tickTime
的倍数,如2×2000ms=4s);dataDir=/var/lib/zookeeper/data
:数据目录路径(需与步骤2中创建的目录一致);clientPort=2181
:客户端连接集群的端口(默认2181,集群中所有节点需一致);server.X=IP:2888:3888
:集群节点列表(X
为节点ID,如1、2、3;IP
为节点主机名或IP;2888为节点间通信端口,3888为Leader选举端口)。
4. 创建myid文件
- 在每台服务器的
dataDir
目录下创建myid
文件(如/var/lib/zookeeper/data/myid
),内容为该节点的server.X
中的X
值(如节点1写1
,节点2写2
,节点3写3
); - 注意:
myid
值必须唯一且与zoo.cfg
中的server.X
对应,是集群识别节点身份的关键。
5. 启动集群
- 在每台服务器上进入Zookeeper的
bin
目录,执行./zkServer.sh start
命令启动Zookeeper服务; - 启动后可使用
jps
命令查看进程(若出现QuorumPeerMain
,则表示启动成功)。
6. 验证集群状态
- 在任意一台服务器上执行
./zkServer.sh status
命令,查看节点角色(Mode: leader
表示Leader节点,Mode: follower
表示Follower节点); - 若集群启动节点数超过半数(如3节点集群需至少2节点启动),Leader会自动选举产生,集群进入正常工作状态。
7. 防火墙配置(可选但推荐)
- 开放Zookeeper使用的端口(默认2181、2888、3888),避免因防火墙拦截导致节点间通信失败:
sudo firewall-cmd --zone=public --add-port=2181/tcp --permanent sudo firewall-cmd --zone=public --add-port=2888/tcp --permanent sudo firewall-cmd --zone=public --add-port=3888/tcp --permanent sudo firewall-cmd --reload
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Zookeeper集群搭建步骤有哪些
本文地址: https://pptw.com/jishu/728363.html