Kafka – Docker – 从主机发送邮件到容器时发生错误(批次过期)

前端之家收集整理的这篇文章主要介绍了Kafka – Docker – 从主机发送邮件到容器时发生错误(批次过期)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我在困难的时间进行故障排除,应该是一个简单的卡夫卡问题.

我试图从kafak-console-producer发布一些消息.当我输入“嗨”我得到:

/opt/kafka/bin/kafka-console-producer.sh --topic test --broker-list 172.17.0.21:9092
hi
[2016-01-25 12:56:19,839] ERROR Error when sending message to topic test with key: null,value: 2 bytes with error: Batch Expired (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback)

我似乎无法找到任何kafka-log4j日志…

我在quick-start中描述的方式运行kafka服务器

我可以创建主题&形容它.

一个可能重要的一点是,卡夫卡& zookeeper正在docker-container中运行(172.17.0.21)我正在创建主题并从主机发送消息.

请注意(kafka-server)9092& (zk)2181是开放的,可以从主机访问,我已经使用netstat&远程登录.

最佳答案
原来是更多的Docker问题…

好的,当运行客户端kafka-console-consumer.sh时,我看到它试图使用容器的名称(这是GUID的前几个字符)连接到代理.

我的主机无法解析使用host-name连接到docker-container.

由于我已经将端口映射到我的主机,所以我更改了kafak-server config的advertised.host.name来指向我的主机的IP地址.

这样,当查询经纪人的zk时,我的主机的IP地址被返回,然后通过端口转发,我连接到docker的代理.

猜你在找的Docker相关文章