0

我正在嘗試在aws上部署卡夫卡。當運行卡夫卡服務器,我收到以下錯誤:在AWS上部署卡夫卡

kafka.common.KafkaException: Socket server failed to bind to hostname:9092: Cannot assign requested address. 
     at kafka.network.Acceptor.openServerSocket(SocketServer.scala:309) 
     at kafka.network.Acceptor.<init>(SocketServer.scala:237) 
     at kafka.network.SocketServer$$anonfun$startup$1.apply(SocketServer.scala:108) 
     at kafka.network.SocketServer$$anonfun$startup$1.apply(SocketServer.scala:91) 
     at scala.collection.Iterator$class.foreach(Iterator.scala:742) 
     at scala.collection.AbstractIterator.foreach(Iterator.scala:1194) 
     at scala.collection.MapLike$DefaultValuesIterable.foreach(MapLike.scala:206) 
     at kafka.network.SocketServer.startup(SocketServer.scala:91) 
     at kafka.server.KafkaServer.startup(KafkaServer.scala:179) 
     at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:37) 
     at kafka.Kafka$.main(Kafka.scala:67) 
     at kafka.Kafka.main(Kafka.scala) 
Caused by: java.net.BindException: Cannot assign requested address 
     at sun.nio.ch.Net.bind0(Native Method) 
     at sun.nio.ch.Net.bind(Net.java:433) 
     at sun.nio.ch.Net.bind(Net.java:425) 
     at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223) 
     at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74) 
     at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:67) 
     at kafka.network.Acceptor.openServerSocket(SocketServer.scala:305) 

沒有任何人有這個想法?提前致謝。

+0

你可以顯示你的'server.properties'文件嗎?你配置正確嗎? –

+0

我剛剛取消了server.properties中的以下行,並將其更改如下: listeners = PLAINTEXT:// :9092 –

+0

如果我將它留下評論,那麼它已成功運行且具有端點如PLAINTEXT:// :9092 但消費者無法連接到kafka代理。 這就是爲什麼我改變它爲彈性IP。但那時卡夫卡經紀人並未開始.. –

回答

1

嘗試將advertised.listeners設置爲public elastic ip,以便初始引導元數據請求將返回客戶端實際可以連接到的ip。