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

读取debezium postgres connect填充的Docker Kafka消息

益炜
2023-03-14

我正在使用Debezium Postgres连接器。我在Postgres中有两个表,分别命名为'publications'和'comments'。根据标准示例,kafka和zookeeper运行在docker容器中。postgres正在本地运行。在使用debezium postgres connect之后,我有以下主题:

$ bin/kafka-topics.sh --list --zookeeper localhost:2181
  • __consumer_offsets
  • dbserver1.public.comments
  • dbserver1.public.publications
  • my_connect_configs
  • my_connect_offsets
  • my_connect_statuss

我想看到主题中的消息列表:

$ bin/kafka-console-consumer.sh --bootstrap-server kafka:9092 --topic dbserver1.public.publications 

[2019-06-03 21:55:16,180]警告[Consumer ClientID=Consumer-1,GroupID=Console-Consumer-5221]无法建立到节点-1(kafka/23.202.231.166:9092)的连接。代理可能不可用。(org.apache.kafka.clients.NetworkClient)[2019-06-03 21:55:16,289]警告[Consumer ClientID=Consumer-1,GroupID=Console-Consumer-5221]无法建立到节点-1(kafka/23.202.231.166:9092)的连接。代理可能不可用。(org.apache.kafka.clients.NetworkClient)[2019-06-03 21:55:16,443]警告[Consumer ClientID=Consumer-1,GroupID=Console-Consumer-5221]无法建立到节点-1(kafka/23.202.231.166:9092)的连接。代理可能不可用。(org.apache.kafka.clients.NetworkClient)[2019-06-03 21:55:16,721]警告[Consumer ClientID=Consumer-1,GroupID=Console-Consumer-5221]无法建立到节点-1(kafka/23.202.231.166:9092)的连接。代理可能不可用。(org.apache.kafka.clients.NetworkClient)[2019-06-03 21:55:17,145]警告[Consumer ClientID=Consumer-1,GroupID=Console-Consumer-5221]无法建立到节点-1(kafka/23.202.231.166:9092)的连接。代理可能不可用。(org.apache.kafka.clients.NetworkClient)[2019-06-03 21:55:18,017]警告[Consumer ClientID=Consumer-1,GroupID=Console-Consumer-5221]无法建立到节点-1(kafka/23.202.231.166:9092)的连接。代理可能不可用。(org.apache.kafka.clients.NetworkClient)^C总共处理了0封邮件

$bin/kafka-console-consumer.sh--bootstrap-server localhost:9092-topic dbserver1.public.publications

[2019-06-03 21:55:16,180]警告[Consumer ClientID=Consumer-1,GroupID=Console-Consumer-5221]无法建立到节点-1(kafka/23.202.231.166:9092)的连接。代理可能不可用。(org.apache.kafka.clients.NetworkClient)

如何为bootstrap-server指定正确的值?多谢了。

共有1个答案

云欣嘉
2023-03-14

我假设您正在尝试从外部服务器连接到kafka broker。

因为您已经提到过,您的Kafka和Zookeeper实例是从docker映像运行的。在执行命令kafka-console-consumer.sh时,您需要标识与9092相对应的docker映像外部端口以及它的外部IP地址,并且必须同时标识这些端口以及--bootstrap-server参数

 类似资料:
  • 问题内容: 如何在我的测试中填写os.Stdin中使用扫描仪从中读取的功能? 我要求使用以下功能通过扫描仪输入用户命令行: 现在如何测试这种情况并模拟用户输入?以下示例不起作用。Stdin还是空的。 问题答案: 嘲笑 您在正确的位置上,该变量是您可以修改的(类型为),可以在测试中为其分配新值。 最简单的方法是使用您要模拟的内容作为输入创建一个临时文件。要创建临时文件,请使用。然后将内容写入其中,并

  • 但是,当我运行使用maven从命令行生成的jar时,它不会读取application.properties,默认情况下,tomcat是在8080上启动的,我无法识别上下文。其他的一切都很好。 在eclipse中,我将:VM参数提供为: 我文章和问题看起来很相似,我已经引用了这篇文章,只有我引用了Application.Properteis来配置spring boot应用程序的自定义上下文和端口。我

  • 代码: 我正在尝试从通过Read_file按钮读取的文本文件填充jlist 我能够正确获取文件路径和文件内容,我用print语句验证了这些文件,但我的jlist仍然是空的。在设计中,我检查了jlist的变量名,两者都与我在代码中使用的匹配。

  • 和一个类ContentProvider,因为它也是在日志中的错误中指定的 公共类PoemsProvider扩展ContentProvider{private static final UriMatcher URI_MATCHER=new UriMatcher(UriMatcher.no_match);private static final int peams=1;private static f

  • 当创建一个应用时,你将会想将多个控件放入一个窗口控件。我们的第一个 helloworld 范例仅仅使用了一个控件,因而我们可以只是简单地调用一个gtk_container_add()将控件填充到一个窗口控件。但是当你想要向窗口控件中放置超过一个控件时,控制每一个控件的位置和大小就变得很重要了。这就是接下来要讲的填充。 GTK+自带了大量各种布局的容器,这些容器的目的是控制被添加到他们的子控件的布局

  • 我正在尝试用名字填充JList,这些名字最终将添加到AddressBook GUI中。我想我的逻辑是,创建JList,通过一个从文本文件中读取名称的方法填充它,然后将JList添加到我的面板中。 我的文本文件如下所示: 但它只是打印出1-10个,而不是名字。我假设这是因为我使用了而不是其他东西,有什么建议吗?