首页 > 其他 > 详细

基于docker环境搭建kafka集群

时间:2019-07-30 01:55:04      阅读:138      评论:0      收藏:0      [点我收藏+]

1.kafka依赖于zookeeper(传送门https://www.cnblogs.com/answerThe/p/11267179.html),所以需要拉取kafka和zookeeper镜像。

  docker pull wurstmeister/kafka

  docker pull wurstmeister/zookeeper

 技术分享图片

2.启动zookeeper容器(wurstmeister/zookeeper镜像拥有默认命令“/usr/sbin/sshd && bash /usr/bin/start-zk.sh”,所以只需启动一个守护式容器即可)

  docker run --name zookeeper -p 12181:2181 -d wurstmeister/zookeeper:latest

 技术分享图片

3.启动两个kafka容器

docker run -p 19092:9092 --name kafka1 -d -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=宿主机IP:12181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://宿主机IP:19092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 wurstmeister/kafka:latest

docker run -p 19093:9093 --name kafka2 -d -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=宿主机IP:12181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://宿主机IP:19093 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 wurstmeister/kafka:latest
docker run -p 19094:9094 --name kafka3 -d -e KAFKA_BROKER_ID=2 -e KAFKA_ZOOKEEPER_CONNECT=宿主机IP:12181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://宿主机IP:19094 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 wurstmeister/kafka:latest

4.分别进入容器kafka1、kafka2、kafka3创建主题test1、test2、test3。下面以kafka3为例。

#在守护式容器中启动一个交互式进程
docker exec -i -t kafka3 /bin/bash
#创建主题test3
./kafka-topics.sh --zookeeper 192.168.181.163:12181 --creat --topic test3 --replication-factor 1 --partitions 3 Created topic "test3"
#查看主题test3
./kafka-topics.sh --zookeeper 192.168.181.163:12181 --describe --topic test3

技术分享图片

可以看到,已经是集群环境,可以看到leader机器、副本在分区上的保存情况,和ISR列表成员

5.测试集群,在kafka3上向test1发送消息,在kafka2上消费test1

./kafka-console-producer.sh --broker-list 192.168.181.163:19092,192.168.181.163:19093,192.168.181.163:19094 --topic test1

 

技术分享图片

 

./kafka-console-consumer.sh --bootstrap-server 192.168.181.163:19092,192.168.181.163:19093,192.168.181.163:19094 --topic test1 --from-beginning

技术分享图片

6.依次关闭kafka2、test1后查看集群状态

技术分享图片

 

基于docker环境搭建kafka集群

原文:https://www.cnblogs.com/answerThe/p/11267129.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!