我使用python-kafka的SimpleConsumer来收听kafka经纪人的话题。 Kafka代理正在一台主机名为BROKER_HOST的机器上运行。 现在,SimpleConsumer从代理BROKER_HOST请求主题元数据以获取主题TOPIC&得到一个元组
(Broker metadata, Topic metadata)
代理元数据来自,
{0: BrokerMetadata(nodeId=0, host='localhost', port=9092)}
理想情况下,主机值必须是BROKER_HOST(hostname
shell cmd确认它)但它是localhost ...
``主题的代理元数据如何进入kafka系统?很明显,这会破坏系统,因为我的消费者试图在其本地主机上连接到9092。
答案 0 :(得分:1)
这看起来像你的经纪人不正确地宣传自己。
您的经纪人server.properties
中有一行:
#advertised.host.name=<hostname routable by clients>
您应该取消注释并设置消费者可路由的值并重新启动您的代理。