首页 文章

如何从azure中公开kafka endpoints 并从onpremise应用程序中使用它?

提问于
浏览
0

我正在尝试为以下内容进行POC:

我在azure上托了一个kafka容器 . 当消费者在azure中时,我能够从消费者向此kafka实例发送消息 .

在docker-compose中

Kafka配置:

kafka:
     image: confluentinc/cp-kafka:latest
     depends_on:
       - zookeeper
     ports:
     - "9092:9092"
     environment:
       KAFKA_ADVERTISED_HOST_NAME: kafka
       KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
       KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:29092,PLAINTEXT_HOST://kafka:9092
       KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
       KAFKA_BROKER_ID: 1
       KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
       KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
       KAFKA_HEAP_OPTS: "-Xmx256M -Xms128M"
       KAFKA_LOG_DIRS: /var/lib/winkafka

生产环境 者应用程序配置在azure上与kafka交谈:

"Endpoint": "kafka:9092"

Kafka 与消费者之间在天蓝色之间的沟通正在发生 .

现在,我想让消费者在本地,而不是在天蓝色 . 所以我所做的只是从azure vm公开端口9092,并将 endpoints 更新为以下内容:

本地 生产环境 者应用程序配置与azure上的kafka交谈:

"Endpoint": "Azure Vm's Public IP:9092"

但是,它无法从我的本地应用程序连接到天蓝色的 Kafka .

你能否建议我在这里做错了什么以及我如何能够从本地应用程序连接到在天蓝色(或任何 Cloud )上的容器中运行的kafka?

1 回答

相关问题