docker安装kafka

1.安装

docker pull wurstmeister/zookeeper
docker pull wurstmeister/kafka

2.启动zookeeper

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

3.启动kafka

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 wurstmeister/kafka

在这里插入图片描述

4.启动验证

# 进入容器
docker exec -it kafka /bin/sh
# 进入路径
cd /opt/kafka_2.11-2.0.0/bin
# 运行发送消息
[生产者]
kafka-console-producer.sh --broker-list localhost:9092 --topic test_topic
[消费者]
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test_topic --from-beginning

生产者消费:
在这里插入图片描述
消费者接收:
在这里插入图片描述
注:

启动参数含义:
-e KAFKA_BROKER_ID=0 在kafka集群中,每个kafka都有一个BROKER_ID来区分自己

-e KAFKA_ZOOKEEPER_CONNECT=ip:2181/kafka 配置zookeeper管理kafka的路径ip:2181/kafka

-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://ip:9092 把kafka的地址端口注册给zookeeper

-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 配置kafka的监听端口

-v /etc/localtime:/etc/localtime 容器时间同步虚拟机的时间

查看zookeeper中是否注册kafka

docker exec -it zookeeper bash bin/zkCli.sh

在这里插入图片描述

解决Docker容器连接 Kafka 连接失败问题

参考:https://www.cnblogs.com/hellxz/p/why_cnnect_to_kafka_always_failure.html
https://www.cnblogs.com/hellxz/p/how_to_add_hosts_on_docker.html

docker中kafka连接zookeeper
1.查看当前主题的信息:docker run -it --rm --network host wurstmeister/kafka bash /opt/kafka/bin/kafka-topics.sh --zookeeper IP:2181 --describe --topic mykafka

4.修改主题分区:docker run -it --rm --network host wurstmeister/kafka bash /opt/kafka/bin/kafka-topics.sh --zookeeper IP:2181 -alter --partitions 4 --topic mykafka

5.查看修改后的分区信息:docker run -it --rm --network host wurstmeister/kafka bash /opt/kafka/bin/kafka-topics.sh --zookeeper IP:2181 --describe --topic mykafka

注意:docker中kafka因为host原因连接不到zookeeper,添加--rm --network host即可
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值