使用Docker快速搭建Zookeeper和kafka集群
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,集群搭建镜像选择Zookeeper和Kafka集群分别运行在不同的容器中zookeeper官方镜像,版本3.4kafka采用wurstmeister/kafka镜像集群规划hostnameIp add
千家信息网最后更新 2025年02月01日使用Docker快速搭建Zookeeper和kafka集群
集群搭建
镜像选择
Zookeeper和Kafka集群分别运行在不同的容器中
zookeeper官方镜像,版本3.4
kafka采用wurstmeister/kafka镜像
集群规划
hostname | Ip addr | port | listener |
---|---|---|---|
zoo1 | 172.19.0.11 | 2184:2181 | |
zoo2 | 172.19.0.12 | 2185:2181 | |
zoo3 | 172.19.0.13 | 2186:2181 | |
kafka1 | 172.19.0.14 | 9092:9092 | kafka1 |
kafka2 | 172.19.0.15 | 9093:9093 | kafka2 |
Kafka3 | 172.19.0.16 | 9094:9094 | Kafka3 |
宿主机root OSX | 192.168.21.139【DHCP获取,会变动】 |
实现目标
kafka集群在docker网络中可用,和zookeeper处于同一网络
宿主机可以访问zookeeper集群和kafka的broker list
docker重启时集群自动重启
集群的数据文件映射到宿主机器目录中
使用yml文件和$ docker-compose up -d命令创建或重建集群
$ docker-compose up -d
zk集群的docker-compose.yml
version: '3.4'services: zoo1: image: zookeeper restart: always hostname: zoo1 container_name: zoo1 ports: - 2184:2181 volumes: - "/Users/shaozhipeng/Development/volume/zkcluster/zoo1/data:/data" - "/Users/shaozhipeng/Development/volume/zkcluster/zoo1/datalog:/datalog" environment: ZOO_MY_ID: 1 ZOO_SERVERS: server.1=0.0.0.0:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888 networks: br17219: ipv4_address: 172.19.0.11 zoo2: image: zookeeper restart: always hostname: zoo2 container_name: zoo2 ports: - 2185:2181 volumes: - "/Users/shaozhipeng/Development/volume/zkcluster/zoo2/data:/data" - "/Users/shaozhipeng/Development/volume/zkcluster/zoo2/datalog:/datalog" environment: ZOO_MY_ID: 2 ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=0.0.0.0:2888:3888 server.3=zoo3:2888:3888 networks: br17219: ipv4_address: 172.19.0.12 zoo3: image: zookeeper restart: always hostname: zoo3 container_name: zoo3 ports: - 2186:2181 volumes: - "/Users/shaozhipeng/Development/volume/zkcluster/zoo3/data:/data" - "/Users/shaozhipeng/Development/volume/zkcluster/zoo3/datalog:/datalog" environment: ZOO_MY_ID: 3 ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=0.0.0.0:2888:3888 networks: br17219: ipv4_address: 172.19.0.13networks: br17219: external: name: br17219
kafka集群的docker-compose.yml
kfkluster少拼了个c...
version: '2'services: kafka1: image: wurstmeister/kafka restart: always hostname: kafka1 container_name: kafka1 ports: - 9092:9092 environment: KAFKA_ADVERTISED_HOST_NAME: kafka1 KAFKA_ADVERTISED_PORT: 9092 KAFKA_ZOOKEEPER_CONNECT: zoo1:2181,zoo2:2181,zoo3:2181 volumes: - /Users/shaozhipeng/Development/volume/kfkluster/kafka1/logs:/kafka external_links: - zoo1 - zoo2 - zoo3 networks: br17219: ipv4_address: 172.19.0.14 kafka2: image: wurstmeister/kafka restart: always hostname: kafka2 container_name: kafka2 ports: - 9093:9093 environment: KAFKA_ADVERTISED_HOST_NAME: kafka2 KAFKA_ADVERTISED_PORT: 9093 KAFKA_ZOOKEEPER_CONNECT: zoo1:2181,zoo2:2181,zoo3:2181 volumes: - /Users/shaozhipeng/Development/volume/kfkluster/kafka2/logs:/kafka external_links: - zoo1 - zoo2 - zoo3 networks: br17219: ipv4_address: 172.19.0.15 kafka3: image: wurstmeister/kafka restart: always hostname: kafka3 container_name: kafka3 ports: - 9094:9094 environment: KAFKA_ADVERTISED_HOST_NAME: kafka3 KAFKA_ADVERTISED_PORT: 9094 KAFKA_ZOOKEEPER_CONNECT: zoo1:2181,zoo2:2181,zoo3:2181 volumes: - /Users/shaozhipeng/Development/volume/kfkluster/kafka3/logs:/kafka external_links: - zoo1 - zoo2 - zoo3 networks: br17219: ipv4_address: 172.19.0.16networks: br17219: external: name: br17219
结果查看和测试
宿主机命令行创建topic
$ pwd/Users/shaozhipeng/Development/kafka_2.11-2.0.0/bin$ ./kafka-topics.sh --create --zookeeper localhost:2184,localhost:2185,localhost:2186 --replication-factor 1 --partitions 1 --topic test1
Kafka Tool查看
docker ps查看正在运行的容器
查看宿主机IP地址,并设置Host
这样宿主机就可以访问kafka集群了
原文地址
集群
宿主
宿主机
镜像
命令
地址
容器
文件
网络
运行
不同
原文
官方
数据
机器
正在
版本
目录
目标
结果
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
三个网站怎么合并用户数据库
java卡死在读取数据库
近10年发生的网络安全事件
软件开发的年终奖
嘉定区互联网络技术服务多少钱
疯狂乐斗看视频提示服务器异常
杭州选校帝互联网科技有限公司
物联网lwip并发服务器
冒险岛数据库首页
做服务器管理赚钱吗
软件开发视频教程第四讲
雷麦尔互联网科技有限公司
网络安全防护监测情况
山西党建设计软件开发
传统数据库集群和分布式数据库
汇客通网络技术
我的世界免费服务器电脑版下载
中科软科技互联网怎么样
用函数对比表格中数据库
用命令方式打开数据库
嘉定区互联网络技术服务多少钱
清华大学教授解读网络安全
韶关网络安全工程师十大品牌
网络安全防护监测情况
2009比特币网络技术
网络安全法 判断题
好用的数据库开发软件
柳州网络安全实战培训老品牌
查看远程数据库编码格式
融资数据库