论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
大数据
›
数据仓库与分析
›
Linux Zookeeper在Docker 安装与简单通信
Linux Zookeeper在Docker 安装与简单通信
灌篮少年
金牌会员
|
2024-3-3 04:09:09
|
显示全部楼层
|
阅读模式
楼主
主题
616
|
帖子
616
|
积分
1848
一、在本地计算机上安装Docker
1.安装Docker (安装最新的Docker版本)
yum install docker-ce docker-ce-cli containerd.io docker-bulidx-plugin docker-compose-plugin
2.查看Docker版本并启动Docker
docker version
安装成功的Docker版本为24.0.6
systemctl start docker
Docker 成功启动
二、在Docker中构建映像(image),安装Zookeeper
1.拉取zookeeper镜像 (选择安装版本为3.8.2)
docker pull zookeeper:3.8.2
2.查看Docker镜像
docker images
已成功拉取zookeeper:3.8.2 镜像
三、构建局域网环境
采用bridge 方式
docker network create --driver bridge --subnet=172.18.0.0/16 --gateway=172.18.0.1 zoonet
四、使用 docker-compose 创建zookeeper集群
1.查看docker - compose (在安装docker时已安装docker-compose-plugin)
docker-compose --version
2.编写zoo.yml文件
3.在zoo.yml同一级目录下执行docker-compose命令
docker-compose -f zoo.yml up -d
4.查看运行的容器
docker ps
可以看到zoo1 zoo2 zoo3 三个容器实例正在运行
其容器id 分别为6635ecc75b61 b8a740a705e2 a447136876a9
5.验证zoo1 zoo2 zoo3是否构成一个集群。进入zookeeper容器查看主从节点
1)进入 zoo1
docker exec -it b8a740a705e2 /bin/bash
zoo1 为follower
2)进入zoo2
docker exec -it 6635ecc75b61 /bin/bash
zoo2为follower
3)进入zoo3
docker exec -it a447136876a9 /bin/bash
zoo3为leader
可以知道zoo1 zoo2 zoo3 通过选举产生得到leader zoo3
follower zoo1 follower zoo2
五、在leader上进行配置修改,观测follower上相应配置的同步情况
1.进入zoo3 启动zkCli.sh 并进行修改
docker exec -it a447136876a9 /bin/bash
./bin/zkCli.sh
ls /
查看
create /hi
2.进入follower zoo2 并启动 zkCli 后查看
出现leader 写入的hi
3.进入follower zoo1 并启动 zkCli 后查看
同样出现leader 写入的hi
六、安装过程中出现的问题
1.构建局域网时报错
在使用命令
docker network create --driver bridge --subnet=172.18.0.0/16 --gateway=172.18.0.1 zoonet
出现报错
在查看docker network ls 和docker network inspect后发现因为我之前使用Docker创建了一个network ,它默认是bridge 与我创建的network有冲突。在删除它后问题得到了解决。
2.zookeeper版本问题
使用命令docker run 运行容器时需要指定镜像版本,否则默认会使用最新的版本创建并运行。后面停止并删除之前的zookeeper,指定zookeeper版本后解决问题。
3.zookeeper集群无法通讯的问题
在配置文件zoo.yml 后,使用docker-compose启动,发现各个节点无法通信。因为在yml文件中未指定ipv4的ip地址 ,重新编写yml文件加入networks配置解决问题。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
正序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
发新帖
回复
灌篮少年
金牌会员
这个人很懒什么都没写!
楼主热帖
【靶场】THM-Pickle Rick-练习
【WinUI3】ListView / GridView 学习总 ...
SAP WM高阶之下架策略M(Small Large Qu ...
提高开发质量的 5 个必要实践 ...
教你用Python画个可爱的皮卡丘!(附完 ...
用C# + Winform 做一个简易的游戏设计 ...
《迷你世界》亿级玩家都在用的游戏场景 ...
每日算法之二叉搜索树的后序遍历序列 ...
JDBC
微服务集成redis并通过redis实现排行榜 ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表