场景
Kafka依赖于ZooKeeper,这里使用Docker进行Zookeeper和Kafka的安装,并实现发送消息和消费消息。
CentOS7中Docker的安装与配置:
CentOS7中Docker的安装与配置_霸道流氓气质的博客-CSDN博客_centos7配置docker仓库
在上面将Docker安装成功的基础上。
注:
博客:
霸道流氓气质的博客_CSDN博客-C#,架构之路,SpringBoot领域博主
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
1、搜索有哪些zookeeper的镜像
docker search zookeeper
选择STARS最多的拉取
docker pull zookeeper
2、搜索有哪些kafka的镜像
docker search kafka
同样选择STARS最多的拉取
docker pull bitnami/kafka
3、启动zookeeper
docker run -d --name zookeeper -p 2181:2181 -t zookeeper
4、启动kafka
docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=12.0.0.1:2181 -e ALLOW_PLAINTEXT_LISTENER=yes -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://12.0.0.1:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t bitnami/kafka
注意环境变量-e配置中
KAFKA_BROKER_ID 每个kafka都会有一个BROKER_ID来区分自己
KAFKA_ZOOKEEPER_CONNECT=12.0.0.1:2181 是配置zookeeper的ip和端口
KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://12.0.0.1:9092 把kafka的地址端口注册给zookeeper
KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 配置kafaka的监听端口
ALLOW_PLAINTEXT_LISTENER=yes 允许使用PLAINTEXT侦听器
如果不配置这个启动kafka后会失败在日志中会提示:
The KAFKA_CFG_LISTENERS environment variable does not configure a secure listener. Set the environment variable ALLOW_PLAINTEXT_LISTENER=yes to allow the container to be started with a plaintext listener. This is only recommended for development.
The KAFKA_ZOOKEEPER_PROTOCOL environment variable does not configure a secure protocol. Set the environment variable ALLOW_PLAINTEXT_LISTENER=yes to allow the container to be started with a plaintext listener. This is only recommended for development.
5、启动成功之后进入kafka容器内部
查看运行的容器中kafka的容器id
docker ps
然后进入容器内部
docker exec -it 5e2fa88e560e /bin/bash
找到kafka的bin目录
find / -name kafka
进入到bin目录
cd /opt/bitnami/kafka/bin
6、创建Topic主题
kafka-topics.sh --create --zookeeper 127.0.0.1:2181 --topic badao --partitions 1 --replication-factor 1
7、发送消息
kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic badao
发送消息,按回车,之后按行向kafka发送消息 ctrl+C 退出
8、消费消息
此时再复制一个连接,同样进入容器内部的kafka的bin目录下
kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic badao
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/135974.html