irpas技术客

Kafka使用代码连接时日志频繁提示Broker may not be available._黄嚯嚯

网络投稿 2086

报错日志?

?

Connection to node 0 could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient) Connection to node 1 (localhost/127.0.0.1:9092) could not be established. Broker may not be available. 问题描述

服务器已经开通了对应的端口,防火墙也都均属于关闭状态 ,? 能够telnet ,也用netstat看过了对应端口,确实已经建立了连接,却一直报错??

解决办法

后来参考这篇博客 ,?kafka - advertised.listeners and listeners?发现? ?listeners,用于server真正bind

advertisedListeners, 用于开发给用户,如果没有设定,直接使用listeners ,?

修改 Kafka 集群配置文件 server.properties?

broker.id=1 # 监听端口指定为 9093 listeners=PLAINTEXT://:9093 # 对外部暴露端口 本机IP:端口 advertised.listeners=PLAINTEXT://192.168.206.155:9093 num.network.threads=3 num.io.threads=8 socket.send.buffer.bytes=102400 socket.receive.buffer.bytes=102400 socket.request.max.bytes=104857600 log.dirs=/tmp/kafka-logs-1

其实这块在原本配合文件中也有描述?

# Hostname and port the broker will advertise to producers and consumers. If not set, # it uses the value for "listeners" if configured. ?Otherwise, it will use the value # returned from java.net.InetAddress.getCanonicalHostName().

如果没有设置, 代理将向生产者和消费者通告。(这里代理就是指 上面的监听 , 而监听的ip地址为 127.0.0.1 , 外部自然是访问不到)?

如果配置了,它会使用“listener”的值。否则,它将使用该值? java.net.InetAddress.getCanonicalHostName()。

?


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #may #not #be #available #报错日志Connection #To #node