0
点赞
收藏
分享

微信扫一扫

设计模式(16)迭代器模式

搬砖的小木匠 2023-10-26 阅读 21

1.摘要

在本文中,介绍了利用Docker安装Kafka的基础环境要求; 利用Docker安装zookeeper过程; 利用Docker安装Kafka过程;进入容器配置生产者和消费者过程; 演示生产者和消费者通讯; 故障排查方法。

2.基础环境准备

提前准备一台安装Linux系统的主机或虚拟机,我这里安装的是Ubuntu 22.04.3 LTS版本。

登录到Linux系统输入:docker -v 命令, 如果出现:

Docker version 24.0.5, build 24.0.5-0ubuntu1~22.04.1

类似于这样的提示信息,说明Docker已安装,如果没有,请输入以下命令安装Docker:

$ sudo apt update
$ sudo apt install docker.io

3.安装zookeeper

在命令行直接输入以下命令,docker会自动拉取对应镜像:

# docker run -d --name zookeeper -p 2181:2181 -v /etc/localtime:/etc/localtime wurstmeister/zookeeper

拉取过程如图:

4.安装Kafka

在命令行直接输入以下命令,docker会自动拉取对应镜像:

# docker run  -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=[你的IP地址]:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://[你的IP地址]:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka

注意, 我的服务器IP是192.168.201.206,所以上面的IP要根据自己的实际情况进行变更,我变更后的命令如下:

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

拉取过程如图:

5.进入容器

Kafka安装完毕后,还要进入到容器中启动生产者和消费者,这样可以验证kafka功能是否正常,顺序执行命令如下:

# docker ps -a                      #查看kafka镜像的容器ID
# docker exec -it 容器ID /bin/sh     #进入到容器内部
# cd /opt/kafka/bin                 # 切到容器内部kafka执行目录下

执行最后的结果如图:

6.启动生产者

在容器里执行以下命令启动生产者:

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

我这里自己起了一个topic名称,名字为test123, 如图:

产生者脚本启动成功后,会有一个">"提示符。

7.启动消费者

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

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

注意,这里有两个变量需要自己调整,一个是IP地址,另一个是上面建立的Topic名称, 我这里填入信息后的完整命令如下:

./kafka-console-consumer.sh --bootstrap-server 192.168.201.206:9092 --topic test123

执行过程如图:

8.生产者与消费者测试

切换到生产者窗口,连续输入一些信息,如图:

再切换回消费者窗口, 正常的话已经可以收到生产者发送的信息了,如图:

9.故障排查

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

docker logs 容器ID

通过查看容器日志进行故障排查,过程如图:

举报

相关推荐

0 条评论