docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > docker运行kafka集群

如何在一台服务器上使用docker运行kafka集群

作者:c的s

文章详细介绍了如何在一台服务器上使用Docker运行Kafka集群,包括拉取镜像、创建网络、启动Kafka容器、检查运行状态、编写启动和关闭脚本、进入容器检查、故障排查以及启动生产者和消费者等步骤,感兴趣的朋友跟随小编一起看看吧

1.拉取镜像

docker pull wurstmeister/kafka

docker pull wurstmeister/zookeeper

2.创建集群之间通信的网络

docker network create kafka-cluster-net

docker network inspect kafka-cluster-net 

3.将zookeeper加入到网络中

docker network connect kafka-cluster-net zookeeper

4.启动kafka集群

​
docker run -d \
--name kafka-0 \
--network kafka-cluster-net \
-p 9092:9092 \
-e KAFKA_BROKER_ID=0 \
-e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092 \
-e KAFKA_LISTENERS=PLAINTEXT://:9092 \
wurstmeister/kafka
​
docker run -d \
--name kafka-1 \
--network kafka-cluster-net \
-p 9093:9092 \
-e KAFKA_BROKER_ID=1 \
-e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9093 \
-e KAFKA_LISTENERS=PLAINTEXT://:9092 \
wurstmeister/kafka

5.检查是否运行

docker ps

docker network inspect kafka-cluster-net 

检查网络以及容器运行状态

6.编写集群启动脚本

start_kafka_cluster.sh :

#!/bin/bash
docker start zookeeper
sleep 4
docker start kafka-0 kafka-1 
echo "Kafka cluster containers started successfully."

7.编写集群关闭脚本

stop_kafka_cluster.sh:

#!/bin/bash
docker stop kafka-0 kafka-1 zookeeper
echo "Kafka cluster containers stopped successfully."

8.进入容器检查

docker exec -it kafka-0 /bin/bash

cd /opt/kafka/                      #切换到内部kafka目录

9.故障排查

如果在使用Docker过程中遇到任何错误, 可以命令:

docker logs 容器ID/容器名称

10、启动生产者

./kafka-console-producer.sh --broker-list localhost:9092 --topic [你的topic名称]

11.启动消费者

为了看到生产者和消费者之间的消息传递效果,这里需要另开一个终端,按照上面的方法进入容器对应目录,并执行以下命令:

./kafka-console-consumer.sh --bootstrap-server [你的IP地址]:9092 --topic [你的topic名称]

到此这篇关于在一台服务器上使用docker运行kafka集群的文章就介绍到这了,更多相关docker运行kafka集群内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

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