我在我的EC2实例上安装了Apache Kafka,更改了安全组以打开Kafka和Zookeeper的端口9092和2181。我只有一个经纪人,单个主题,单个分区没什么复杂的。我通过尝试当地的生产者/消费者来确认卡夫卡的作品。
在AWS安全组中,它显示:
自定义TCP规则 TCP 2181 0.0.0.0/0
自定义TCP规则 TCP 9092 0.0.0.0/0
现在我想使用我的Broker EC2实例的公共IP连接我的生产者和消费者(不是在Amazon EC2实例上)。但是,我无法将我的任何生产者或消费者与EC2经纪人联系起来。他们只是说经纪人没找到。
你能帮帮我吗?
由于
答案 0 :(得分:1)
这可能是由于Kafka默认在Zookeeper中公布代理名称。在AWS上,它通常使用无法在外部解析的内部EC2 DNS名称。请查看broker config
的advertised.listeners
属性