Kafka控制台发送消息报错

问题如下:问题描述:ERROR Error when sending message to topic helloworld with key: null, value: 15 bytes with error: (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback)
org.apache.kafka.common.errors.TimeoutException: Failed to update metadata after 60000 ms.

 

 

小白刚接触Kafka,所以全靠蒙解决了这个问题,记录一下,如果你也和我一样是个小白,碰到这个问题不妨试一下;

我的控制台生产者语句:

bin/kafka-console-producer.sh --broker-list 192.168.1.130:9092 --topic test

控制台消费者语句:

bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

后来无意中发现我的conf/server.properties文件这么写的一句话:

# The address the socket server listens on. It will get the value returned from 
# java.net.InetAddress.getCanonicalHostName() if not configured.
#   FORMAT:
#     listeners = security_protocol://host_name:port
#   EXAMPLE:
    listeners = PLAINTEXT://192.168.1.130:9092
#listeners=PLAINTEXT://:9092

注意看没有注释的地方: lip我配置为本机虚拟机中的ip地址;

尝试着将发送者语句改为:

bin/kafka-console-producer.sh --broker-list 1.168.1.130:9092 --topic test

消费者就可以接收到消息了。

通过两次实验,发现一个奇淫巧技(我不能理解,以后明白了再回头看啦,勿喷)? 控制台发送者的broker-list的ip需要与server.properties中listeners处的一致,控制台消费者就能接收到消息。         

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值