05-安装Zookeeper
5、安装 Zookeeper
5.1 分布式安装部署#
5.1.1 集群规划#
5.1.2 上传 jar#
上传 jar 包,此处采用版本 apache-zookeeper-3.5.7-bin.tar.gz
5.1.3 解压#
tar zxvf apache-zookeeper-3.5.7-bin.tar.gz -C /opt/module/
# 重命名
mv apache-zookeeper-3.5.7-bin/ zookeeper-3.5.7
# 同步 zookeeper-3.5.7 到 bigdata102, bigdata103 机器
xsync zookeeper-3.5.7/
5.1.4 配置服务器编号#
- 在/opt/module/zookeeper-3.5.7/这个目录下创建zkData
mkdir zkData
- 在/opt/module/zookeeper-3.5.7/zkData目录下创建一个myid的文件
vim myid
在文件中添加与 server 对应的编号(bigdata101配置 1)
写入 1
- 分发 myid
xsync myid
并分别在 bigdata102、bigdata103 上修改 myid 文件中内容为2、3
5.1.5 配置 zoo.cfg 文件#
重命名 /opt/module/zookeeper-3.5.7/conf 这个目录下的 zoo_sample.cfg 为 zoo.cfg
mv zoo_sample.cfg zoo.cfg
vim zoo.cfg
- 修改数据存储路径配置
dataDir=/opt/module/zookeeper-3.5.7/zkData
- 增加如下配置:
####################### cluster ##########################
server.1=bigdata101:2888:3888
server.2=bigdata102:2888:3888
server.3=bigdata103:2888:3888
- 同步zoo.cfg配置文件
xsync zoo.cfg
- 配置参数解读
A是一个数字,表示这个是第几号服务器;
集群模式下配置一个文件myid,这个文件在dataDir目录下,这个文件里面有一个数据就是A的值,Zookeeper启动时读取此文件,拿到里面的数据与zoo.cfg里面的配置信息比较从而判断到底是哪个server。
B是这个服务器的地址;
C是这个服务器Follower与集群中的Leader服务器交换信息的端口;
D是万一集群中的Leader服务器挂了,需要一个端口来重新进行选举,选出一个新的Leader,而这个端口就是用来执行选举时服务器相互通信的端口。
5.2 编写 Zookeeper 集群启动停止脚本#
cd /home/bigdata/bin/
vim zk.sh
在脚本中编写如下内容:
#!/bin/bash
<<EOF
该脚本是 zookeeper 集群的启动停止脚本
EOF
case $1 in
"start") {
for i in bigdata101 bigdata102 bigdata103; do
echo -e "\033[32m ---------- zookeeper $i 启动 ------------ \033[0m"
ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh start"
done
} ;;
"stop") {
for i in bigdata101 bigdata102 bigdata103; do
echo -e "\033[31m ---------- zookeeper $i 停止 ------------ \033[0m"
ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh stop"
done
} ;;
"status") {
for i in bigdata101 bigdata102 bigdata103; do
echo -e "\033[35m ---------- zookeeper $i 状态 ------------ \033[0m"
ssh $i "/opt/module/zookeeper-3.5.7/bin/zkServer.sh status"
done
} ;;
esac
- 增加脚本执行权限
chmod u+x zk.sh
5.3 启动停止 Zookeeper 集群#
- 启动
zk.sh start
- 停止
zk.sh stop
Zookeeper 是分布式注册中间件,所以涉及到分布式的集群环境肯定是需要 zookeeper 的。
作者:Lorem Moon
出处:https://www.cnblogs.com/hello-cnblogs/p/16275077.html
版权:本作品采用「 CC BY-NC-SA 4.0 」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY