当前位置: 首页 > 知识库问答 >
问题:

Kafka:如何连接kafka-console-consumer以获取远程代理主题内容?

锺离嘉茂
2023-03-14

我已经在ec2上的一台机器上设置了一个kafka zookeeper和3个代理,端口为9092..9094,并且正在尝试使用另一台机器上的主题内容。端口2181(zk)、9092、9093和9094(服务器)对使用者计算机开放。我甚至可以做一个bin/kafka-topics.sh--description--zookeeper 172.x.x.x:2181-topic remotetopic

主题:远程访问分区计数:1 ReplicationFactor:3 Configs:主题:远程访问分区:0 Leader:2 Replicas:2,0,1 ISR:2,0,1 Blockquote

但是,当我执行bin/kafka-console-consumer.sh--zookeeper 172.x.x.x:2181--from-beginent-topic remotetopic时,我得到了

警告从代理[id:0,主机:localhost,端口:9092]为主题[Set(remotetopic)]提取相关id为0的主题元数据失败(kafka.client.clientutils$)java.nio.channels.ClosedChannelException

为什么消费者试图从localhost读取?是否有任何选项或命令行或缺省文件从中读取;我能改变它吗?

任何帮助都将不胜感激!

共有1个答案

钱欣悦
2023-03-14

我也有同样的问题,我使用的是Kafka0.11,我在我的Ubuntu VM中开始了producer and broker,在Windows10中开始了consumer。

我改变了(没有评论)

advertised.listeners=PLAINTEXT://your.host.name:9092

advertised.listeners=PLAINTEXT://<myActual IP address>:9092
advertised.listeners=PLAINTEXT://192.168.150.150:9092
 类似资料:
  • 我需要编写外壳脚本来读取特定主题上的kafka消息,使用“bin/kafka-console-consumer.sh--主题快速启动-事件--from-开始--引导服务器localhost:9092”,只需要一定的时间,比如10秒。使用选项--time out 10s没有帮助,因为如果特定主题上的消息连续出现,该过程不会在10s之后停止。请建议如何做同样的事情。

  • 我正在尝试设置Kafka connect sink连接器。Kafka connect是Kafka connect worker(confluent-3 . 2 . 0)的一部分。我有一个Kafka broker (confluent-3.2.0)在机器a上运行。我想在另一台机器B上设置Kafka-connect-sink连接器来使用消息,使用一个定制的Kafka-connect-sink连接器ja

  • 出于特殊原因,我需要同时使用 (又名高级消费者)和 (又名低级消费者)来读取 Kafka。对于 ,我使用基于 ZooKeeper 的配置,并且对此完全满意,但 需要实例化种子代理。 我不想同时保留动物园管理员和经纪人主机的列表。因此,我正在寻找一种方法,从ZooKeeper中自动发现特定主题的经纪人。 由于一些间接的信息,我相信这些数据存储在ZooKeeper中的以下路径之一: < li > <代

  • 我正在尝试用3个代理&Zookeeper来测试运行一个单独的Kafka节点。我希望使用控制台工具进行测试。我是这样管理制作人的: 然后我以这样的方式运行消费者: 我可以在生产者中输入消息,并在消费者中看到它们,这是预期的。但是,当我使用bootstrap-server运行消费者的更新版本时,我什么也得不到。例如: 当我有一个代理在端口9092上运行时,这工作得很好,所以我彻底搞糊涂了。有没有办法让

  • 其中一个Kafka流应用程序在Kafka代理和消费者端产生了大量未知生产者ID错误。 流配置如下: 消费者方面的错误: 这背后的原因是什么?

  • 我在上构建了一个排队系统。应用程序将为特定的生成消息,在使用者端,我必须使用为该主题生成的所有记录。 我使用新的Java使用者API编写了consumer。代码看起来像 这里我需要永远运行消费者,这样生产者推入kafka主题的任何记录都应该立即消费和处理。 所以我的困惑是,使用无限while循环(像示例代码中那样)消费数据是正确的方法吗?