docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > Mac使用Docker搭建kafka集群

Mac上使用Docker搭建kafka集群方式

作者:寒山道杳

这篇文章主要介绍了Mac上使用Docker搭建kafka集群方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

1、拉取镜像

// 拉取 kafka 镜像
docker pull wurstmeister/kafka
// 拉取 zookeeper 镜像
docker pull zookeeper

2、运行zookeeper

docker run -d --name zookeeper -p 2181:2181 -t zookeeper

3、运行kafka

注意:192.168.124.11 为宿主机IP

Kafka0:

docker run -d --name kafka0 -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.124.11:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.124.11:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka

Kafka1:

docker run -d --name kafka1 -p 9093:9093 -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=192.168.124.11:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.124.11:9093 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9093 -t wurstmeister/kafka

Kafka2: 

docker run -d --name kafka2 -p 9094:9094 -e KAFKA_BROKER_ID=2 -e KAFKA_ZOOKEEPER_CONNECT=192.168.124.11:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.124.11:9094 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9094 -t wurstmeister/kafka

参数说明:

4、设置topic

进入kafka0:

docker exec -it kafka0 /bin/bash

进入bin目录:

cd /opt/kafka_2.13-2.8.1/bin

创建topic:

kafka-topics.sh --create --zookeeper 192.168.124.11:2181 --replication-factor 3 --partitions 5 --topic TestTopic

查看topic:

// 查看指定 topic
kafka-topics.sh --zookeeper 192.168.124.11:2181 --topic TestTopic --describe 
// 查看 topic 集合
kafka-topics.sh --zookeeper 192.168.124.11:2181 --list

Kafka的topic所有分区会分散在不同Broker上,所以该topic的5个分区会被分散到3个Broker上,其中有两个Broker得到两个分区,另一个Broker只有1个分区,如图所示:

集群节点说明:

5、进行生产者和消费者测试

分别在Broker0上运行一个生产者,Broker1、2上分别运行一个消费者:

kafka-console-producer.sh --broker-list 192.168.124.11:9092 --topic TestTopic
 
kafka-console-consumer.sh --bootstrap-server 192.168.124.11:9093 --topic TestTopic --from-beginning
 
kafka-console-consumer.sh --bootstrap-server 192.168.124.11:9094 --topic TestTopic --from-beginning

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文