Docker搭建Kafka测试集群

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker搭建Kafka测试集群相关的知识,希望对你有一定的参考价值。

参考技术A zookeeper利用这个hostname在集群中的broker之间同步消息, 这里配置为kafka在docker虚拟网络中的IP。 使用你的宿主机的IP也可以,但是端口号要改成宿主机的端口号

Kafka在Docker container中的端口号

如果你需要在Docker虚拟网络之外使用Kafka集群,你需要把这两个参数配置成你宿主机的IP,端口号要改成Docker映射到宿主机的端口号(9092, 9093)。当往Kafka其中的一个broker发送消息时,Kafka集群从ZooKeeper取得Broker IP和端口号,然后同步数据,使用虚拟网络IP会导致发送和接收消息失败,因为宿主机无法访问Docker虚拟网络内的节点

 例如我的宿主机IP是,192.168,0.2,

上述2个Kafka容器,9092端口号分别映射到宿主机的9092和9093端口。

环境变量配置如下

Kafka1配置为

      KAFKA_ADVERTISED_HOST_NAME: 192.168.0.2

      KAFKA_ADVERTISED_PORT: 9092

Kafka2配置为

      KAFKA_ADVERTISED_HOST_NAME: 192.168.0.2

      KAFKA_ADVERTISED_PORT: 9093

以上是关于Docker搭建Kafka测试集群的主要内容,如果未能解决你的问题,请参考以下文章

docker容器搭建kafka集群

搭建基于 docker 的 Kafka 集群及 Spring Boot 应用访问

Docker搭建kafka集群

二 用docker compose搭建kafka集群

docker下部署kafka集群(多个broker+多个zookeeper)

Mac 使用 docker 搭建 kafka 集群 + Zookeeper + kafka-manager