有3臺kafka
ip分別是內(nèi)網(wǎng)ip
192.168.2.21? 9092
192.168.2.22? 9092
192.168.2.23? 9092
另有一臺同時接通了內(nèi)網(wǎng)和互聯(lián)網(wǎng)的機器(內(nèi)網(wǎng)ip 192.168.2.13是目,外網(wǎng)ip 172.50.63.1)谤饭,
現(xiàn)在用這臺機器做了端口映射,用的rinetd
0.0.0.0? 9092? 192.168.2.21? 9092
0.0.0.0? 9093? 192.168.2.22? 9092
0.0.0.0? 9094? 192.168.2.23? 9092
然后在自己開發(fā)電腦上用java代碼生產(chǎn)消息 topic=ffff
props.put("bootstrap.servers","172.50.63.1:9092");
會產(chǎn)生如下報錯
java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.TimeoutException: Batch containing1record(s) expired duetotimeoutwhilerequesting metadatafrombrokersforffff-0atorg.apache.kafka.clients.producer.internals.FutureRecordMetadata.valueOrError(FutureRecordMetadata.java:65)atorg.apache.kafka.clients.producer.internals.FutureRecordMetadata.get(FutureRecordMetadata.java:52)atorg.apache.kafka.clients.producer.internals.FutureRecordMetadata.get(FutureRecordMetadata.java:25)atProducer.run(Producer.java:140)Causedby: org.apache.kafka.common.errors.TimeoutException: Batch containing1record(s) expired duetotimeoutwhilerequesting metadatafrombrokersforffff-0
這是我的kafka配置
listeners=PLAINTEXT://0.0.0.0:9092advertised.listeners=PLAINTEXT://192.168.2.13:9092
現(xiàn)在的疑問是
這個配置應(yīng)該寫什么懊纳?才能讓外網(wǎng)能夠正常生產(chǎn)
advertised.listeners應(yīng)該寫互聯(lián)網(wǎng)ip 172.50.63.1 還是做映射的那臺內(nèi)網(wǎng)ip 192.168.2.13