我有麻煩連接從我的主機(Windows)到客戶(Linux),我安裝了卡夫卡。連接到卡夫卡VirtualBox
我已經設置了一個VM(帶有VirtualBox),我安裝了Confluent工具。在此VM中,我運行以下命令:
confluent start schema-registry
它啓動zookeeper,kafka和模式註冊表。
在這個虛擬機,我可以運行
kafka-console-producer --broker-list localhost:9092 --topic test
和
kafka-console-consumer --bootstrap-server localhost:9092 --topic test
,一切工作正常,我可以產生和接收消息。
我的目標然而,能夠生產從我的主機消耗的消息,所以我建立這個端口轉發規則:
從我的窗戶,我期待這個命令工作:
bin\windows\kafka-console-producer.bat --broker-list 127.0.0.1:9092 --topic test
但我得到的是這樣的:
ERROR Error when sending message to topic test with key: null, value: 3 bytes with error: (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback)
org.apache.kafka.common.errors.TimeoutException: Expiring 1 record(s) for test-0: 1529 ms has passed since batch creation plus linger time
我已經嘗試了很多不同的東西,但仍然無法找到解決辦法的....你的想法?
非常感謝你的幫助,我真的感覺在這裏丟失。 Linux Guest的主機名是kafka-VirtualBox。在advertised.listeners,我現在有這樣的: advertised.listeners = PLAINTEXT://卡夫卡的VirtualBox:9092 和Windows主機,我加入這行到主機文件: 127.0.0.1卡夫卡-VirtualBox 我仍然有同樣的錯誤雖然.... – Florian
嗯...... 然後,它需要解決一步一步來。 首先,確認「是否有kafka命令可以訪問kafka-VirtualBox?」由kafka-topics.bat。 – kimutansk
我張貼在路上。 然後,它需要解決一步一步來。首先,確認「是否允許kafka命令訪問kafka-VirtualBox?」由kafka-broker-api-versions.bat。 如果命令不能訪問到卡夫卡的VirtualBox,這個問題是虛框的網絡設置問題。 如果命令可以訪問到卡夫卡的VirtualBox,這個麻煩變得卡夫卡的經紀人或客戶端設置問題。 – kimutansk