我在 AWS MSK 中创建了一个集群并创建了一个主题。我可以在与集群相同的 VPC 中生成和使用来自 EC2 实例的事件。具体用例是我想使用 Java 来消费事件。KafkaClient AWS SDK没有任何事件消费的方法,所以我这里不能用。在创建KafkaConsumer时,我无法直接在 Properties() 中传递引导服务器,因为 IP 在 VPC 内部。
我已经阅读了有关连接到 MSK 的方法的 AWS指南,但不确定哪种方法适合这个确切的用例。我尝试了几种方法-
将 Advertisementd.listerners 设置为实例的公共 IP。但是在创建 KafkaConsumer 后列出主题时仍然会出现此错误-
Connection to node -1 could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)
在安全组入站规则中打开相关端口(在我的情况下为 PLAINTEXT 为 9092)。
Connection refused
执行此操作后尝试 telnet 到端口 9092 时仍然出现错误。
我的问题是上述任何一项工作,我只是在这里遗漏了其他可以解决这个问题的东西。还是上述方法都行不通?
我的最终目标是使用 Java 使用来自 MSK 集群的事件。