docker部署zookeeper集群方式(单主机、多主机)
作者:轩辕龙儿 发布时间:2021-07-22 02:36:27
标签:docker,部署,zookeeper,集群
1、一台主机上部署zookeeper集群
下面这个是官方给出的docker-compose的部署方案(这个是都在一台主机上部署的):
version: '3'
services:
zoo1:
image: zookeeper
restart: always
ports:
- 2182:2181
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
zoo2:
image: zookeeper
restart: always
ports:
- 2183:2181
environment:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
zoo3:
image: zookeeper
restart: always
ports:
- 2184:2181
environment:
ZOO_MY_ID: 3
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
2、一台主机部署zookeeper集群分析
我们从上面的分析,最主要的就是ZOO_MY_ID和ZOO_SERVERS(更多环境变量配置参考:https://hub.docker.com/_/zookeeper)
ZOO_MY_ID
:节点IDZOO_SERVERS
:集群节点地址,多个节点之间使用空格隔开
由此可以看出如果不在一个主机上,那么这几个容器之间就得是想通的,为了使其想通,我们运用了Macvlan网络
3、Macvlan网络
macvlan本身是linxu kernel的模块,本质上是一种网卡虚拟化技术。
其功能是允许在同一个物理网卡上虚拟出多个网卡,通过不同的MAC地址在数据链路层进行网络数据的转发,一块网卡上配置多个 MAC 地址(即多个 interface),每个interface可以配置自己的IP,Docker的macvlan网络实际上就是使用了Linux提供的macvlan驱动.在物理网络看来,每张虚拟网卡都是一个单独的接口。
4、跨主机环境准备
编号 | 主机IP | 容器IP |
---|---|---|
主机1 | 192.168.1.187 | 10.0.3.71 |
主机2 | 192.168.1.188 | 10.0.3.72 |
主机3 | 192.168.1.189 | 10.0.3.73 |
5、创建macvlan网络
主机1(主机2和主机3也做如下类似操作):
docker network create -d macvlan --subnet=10.0.3.0/24 --gateway=10.0.3.1 -o parent=em2 zookeeper-kafka-net
subnet
这里结尾最好是/24,代表255.255.255.0,如果是/16代表255.255.0.0,16这种据说在设置了iptable的情况下会出问题parent
后是网卡名称192.168.1.187的网卡名称,可通过ipconfig查找
最后的zookeeper-kafka-net是你创建的macvlan网络名称,可随意写
6、docker-compose.yml文件
主机1:
version: "3"
services:
? zookeeper1:
? ? container_name: zookeeper1
? ? image: zookeeper:3.6.2
? ? networks:
? ? ? zookeeper-kafka-net:
? ? ? ? ipv4_address: 10.0.3.71
? ? ports:
? ? ? - "22181:2181"
? ? ? - "22888:2888"
? ? ? - "23888:3888"
? ? environment:
? ? ? ZOO_MY_ID: 1
? ? ? ZOO_SERVERS: server.1=10.0.3.71:2888:3888;2181 server.2=10.0.3.72:2888:3888;2181 server.3=10.0.3.73:2888:3888;2181
? ? restart: always
networks:
? zookeeper-kafka-net:
? ? external:
? ? ? name: zookeeper-kafka-net
主机2:
version: "3"
services:
? zookeeper2:
? ? container_name: zookeeper2
? ? image: zookeeper:3.6.2
? ? networks:
? ? ? zookeeper-kafka-net:
? ? ? ? ipv4_address: 10.0.3.72
? ? ports:
? ? ? - "22181:2181"
? ? ? - "22888:2888"
? ? ? - "23888:3888"
? ? environment:
? ? ? ZOO_MY_ID: 2
? ? ? ZOO_SERVERS: server.1=10.0.3.71:2888:3888;2181 server.2=10.0.3.72:2888:3888;2181 server.3=10.0.3.73:2888:3888;2181
? ? restart: always
networks:
? zookeeper-kafka-net:
? ? external:
? ? ? name: zookeeper-kafka-net
主机3:
version: "3"
services:
? zookeeper3:
? ? container_name: zookeeper3
? ? image: zookeeper:3.6.2
? ? networks:
? ? ? zookeeper-kafka-net:
? ? ? ? ipv4_address: 10.0.3.73
? ? ports:
? ? ? - "22181:2181"
? ? ? - "22888:2888"
? ? ? - "23888:3888"
? ? environment:
? ? ? ZOO_MY_ID: 3
? ? ? ZOO_SERVERS: server.1=10.0.3.71:2888:3888;2181 server.2=10.0.3.72:2888:3888;2181 server.3=10.0.3.73:2888:3888;2181
? ? restart: always
networks:
? zookeeper-kafka-net:
? ? external:
? ? ? name: zookeeper-kafka-net
来源:https://huangge1199.blog.csdn.net/article/details/121101597


猜你喜欢
- 新浪科技讯 5月19日下午消息,优视科技(UC)将于今日正式发布UC浏览器7.2版。新版UC浏览器在手机Flash10技术上取得突破,借助于
- 序言现有的微服务模式需要再业务代码中集成大量基础设施模块,比如注册中心,服务发现,服务调用链路追踪,请求熔断,重试限流等等,使得系统过于臃肿
- 北京时间10月29日消息,据国外媒体报道,社交网站Facebook平台主管伊森比尔德(Ethan Beard)周三在官方博客网站撰文,描绘了
- IIS6.0应用程序池回收和工作进程 公司的一个网站程序长时间运行后,速度变慢,重新启动网站后速度明显变快,估计是网站程序占用的内存和CPU
- blog(部落格)Weblog网络日志(网志);从1993年NCSA和网景的“What’s New”栏目开始(博客网站的雏形),Blog诞生
- 上周(2007.9.20)在搜索引擎调查分析师吕伯望先生举办的“搜索引擎调查报告与市场格局座谈会”我有幸见到了google谷歌全球副总裁大中
- 微软今天凌晨发布了2009年10月份的13个月度安全补丁,一方面创下了数量上的历史记录,另一方面还首次影响到了月底才开始正式发售的Windo
- 有很多发布商写信来问怎样才算鼓励点击,还有一些发布商在接到我们的违反政策警告的时候甚至并不认为自己在鼓励点击,现在我们就来说说“鼓励点击”。
- 在login.asp中,接收用户输入的Userid和Password数据,并分别赋值给user和pwd,然后再用sql="sele
- 在UNIX和LINUX平台下使用最广泛的免费HTTP服务器是W3C、NCSA和APACHE服务器,而Windows平台NT/2000/200
- 文章主要记录Ubuntu20.04的简单安装过程,安装后更换国内源,安装openssh软件,启动root权限登录Ubuntu20.04安装安
- 微软的Windows Server 2003中防火墙的功能如此之简陋,让很多系统管理员将其视为鸡肋,它一直是一个简单的、仅支持入站防护、基于
- 近来一直有朋友询问RSS的问题,在此我做一个全面的回答。希望能给对rss还有各种疑问的朋友,有所帮助。
- 在线列表图标功能是Discuz! 7.1中用于区分在线成员列表中会员的身份。当您打开在首页或分版块显示在线用户功能时,首页或分版块的在线会员
- 易观国际(Analysys International)的分析认为,随着网络购物逐步升级为中国消费者的主流消费渠道,中国网上零售市场未来最大
- Joomla! 是基于php+mysql 模式的快速建站系统,是一款开源的CMS 全站系统。借助joomla 可以迅速搭建起 * 站。当你为
- FTP(文件传输协议)诞生之后,便迅速地得到了推广和应用,而依据此协议提供服务的ftp服务器在运行时,用户可以通过Internet连接到服务
- 防范DDOS攻击并不一定非要用防火墙。一部份DDOS我们可以通过DOS命令netstat -anmore或者网络综合分析软件:sniff等查
- 第512期的《三联生活周刊》很有意思,不但大篇幅的介绍Google earth和Second Life这俩很时髦的产品,还有关于David
- 在使用VMware Workstation(以下简称:VMware)创建虚拟机的过程中,配置虚拟机的网络连接是非常重要的一环,当我们为虚拟机