我在 wsl 2(Ubuntu Distribution) 中運行 Confluent Platform,并且還在 Windows 上運行 Spring 應用程式,但是當我向生產者發送訊息時出現此錯誤:
無法建立到節點 -1 (localhost/127.0.0.1:9092) 的連接。經紀人可能不可用。引導代理 localhost:9092 (id: -1 rack: null) 已斷開連接
我看看這篇文章: https ://www.confluent.io/blog/kafka-client-cannot-connect-to-broker-on-aws-on-docker-etc/ 和 https://forum.confluent。 io/t/running-kafka-connect-sink-on-separate-machine-from-zookeeper-topic-non-localhost/3038 和 https://www.confluent.io/blog/kafka-listeners-explained/
但我沒有找到解決方案。
concluent/etc/kafka/server.properties 檔案中的配置是什么?
我設定了這個:
Advertising.listeners=PLAINTEXT://127.0.0.1:9092
listener.security.protocol.map= PLAINTEXT:PLAINTEXT
listeners=PLAINTEXT://0.0.0.0:9092
Kafka 正在運行:“localhost:9092”,在 WSL2 中,我可以正確發送和讀取訊息,但它無法在 Windows 上運行我的 spring boot 應用程式。
我看到了這個答案,但它在我的本地主機中不起作用: 在 WSL 上運行 Kafka 并在 Windows 上制作生產者
我是否必須更改 Windows 配置中的某些內容?在 C:\Windows\System32\drivers\etc\hosts?
您能否建議如何解決此錯誤?提前致謝!
uj5u.com熱心網友回復:
您需要ifconfig在 WSL2 終端內部使用,找到其外部介面 IP,然后將其用作廣告偵聽器。
然后,您需要使用netsh interface portproxyWindows CMD 中的命令將埠從管理程式轉發到主機。
或者您可以只使用 Docker for Windows,運行 Kafka 并在那里配置偵聽器,它會自行正確轉發埠
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/447682.html
