You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by Gurnur Wadhwani <gu...@gmail.com> on 2020/04/09 23:12:27 UTC
Send messages to Kafka broker in the cloud from local machine
Hello,
Can anyone suggest me a way out here ?
I am running a single Kafka broker in the cloud VM to which I want to send messages from my local machine.
The listeners config in my cloud machine looks like this:
listeners=INTERNAL://0.0.0.0:19092,EXTERNAL://0.0.0.0:9092
listener.security.protocol.map=INTERNAL:PLAINTEXT,EXTERNAL:PLAINTEXT
advertised.listeners=INTERNAL://xxx:19092,EXTERNAL://xxx_external:9092
inter.broker.listener.name=INTERNAL
where, xxx is 127.0.0.1 and xxx_external is the public IP address of the machine.
When starting a producer and consumer in the cloud, on port 19092, Kafka is able to consume and produce messages.
But when starting a producer in my local machine using kafka binary with the following command:
bin/kafka-console-producer.sh --broker-list xxx_external:9092 --topic users
I get the following error:
ERROR Error when sending message to topic users with key: null, value: 5 bytes with error: (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback)
org.apache.kafka.common.errors.TimeoutException: Topic users not present in metadata after 60000 ms.
P.S.: The firewall on the port 9092 is opened, and when done a ‘tcpdump’ on the cloud machine with port 9092, I can see the packets arriving when a producer is started on local machine.
Thank you.
Best regards,
Gurnur