Как общаться между виртуальной машиной и хостом с помощью кафки? - PullRequest
1 голос
/ 30 сентября 2019

Я пытался по существу использовать Apache-Kafka для связи между производителем Arch и потребителем виртуальной машины Ubuntu, работающим в virtualbox. Мне удалось установить связь между производителем и потребителем на одной машине, следуя следующему руководству YouTube.

https://www.youtube.com/watch?v=VbSRS7kG5Cw

По сути, я использую эти 4 команды в 4 отдельных терминалах.

./bin/zookeeper-server-start.sh config/zookeeper.properties 
./bin/kafka-server-start.sh config/server.properties
./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic MyFirstTopic1
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic MyFirstTopic1

Я попытался настроить серверы zookeeper и kafka как на виртуальной машине, так и на хосте, а также производителя на одной и потребителя на другой, сIP-адрес в команде потребителя изменен с локального хоста на IP-адрес производителя. Я попытался настроить серверы на стороне производителя и оставить все то же самое.

Любая помощь будет принята с благодарностью

1 Ответ

0 голосов
/ 30 сентября 2019

Непонятно, какая машина какая в посте, но вы должны настроить как минимум следующие свойства для прослушивания нелокальных адресов

listeners=PLAINTEXT://0.0.0.0:9092 
advertised.listeners=PLAINTEXT://<external ip>:9092

Начните с производства и потребления с локального хоста,затем перейдите к тому же, чтобы сделать то же самое с компьютера, не являющегося локальным, и затем вы можете сделать то же самое с разных компьютеров

Примечание. Виртуальные машины обычно не имеют прямого доступа к сети на своих хост-машинах, но если брокерв виртуальной машине вам также потребуется настроить переадресацию портов

...