【发布时间】:2020-03-05 00:41:36
【问题描述】:
将 Spring Cloud Stream 2.1.4 与 Spring Boot 2.1.10 结合使用,我正在尝试定位 Kafka 的本地实例。 这是迄今为止我的 projetc 配置的摘录:
spring.kafka.bootstrap-servers=PLAINTEXT://localhost:9092
spring.kafka.streams.bootstrap-servers=PLAINTEXT://localhost:9092
spring.cloud.stream.kafka.binder.brokers=PLAINTEXT://localhost:9092
spring.cloud.stream.kafka.binder.zkNodes=localhost:2181
spring.cloud.stream.kafka.streams.binder.brokers=PLAINTEXT://localhost:9092
spring.cloud.stream.kafka.streams.binder.zkNodes=localhost:2181
但活页夹不断调用错误的目标:
java.io.IOException: Can't resolve address: kafka.example.com:9092
如果这些属性无法欺骗,我该如何指定目标? 此外,我通过 Docker Bitnami 映像部署 Kafka 实例,并且我不希望使用 SSL 配置(请参阅 PLAINTEXT 协议),但我找不到基本凭据登录的属性。有谁知道这是否绝望?
这是我的 docker-compose.yml
version: '3'
services:
zookeeper:
image: bitnami/zookeeper:latest
container_name: zookeeper
environment:
- ZOO_ENABLE_AUTH=yes
- ZOO_SERVER_USERS=kafka
- ZOO_SERVER_PASSWORDS=kafka_password
networks:
- kafka-net
kafka:
image: bitnami/kafka:latest
container_name: kafka
hostname: kafka.example.com
depends_on:
- zookeeper
ports:
- 9092:9092
environment:
- ALLOW_PLAINTEXT_LISTENER=yes
- KAFKA_CFG_LISTENERS=PLAINTEXT://:9092
- KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://:9092
- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
- KAFKA_ZOOKEEPER_USER=kafka
- KAFKA_ZOOKEEPER_PASSWORD=kafka_password
networks:
- kafka-net
networks:
kafka-net:
driver: bridge
提前致谢
【问题讨论】:
-
我用过 Bitnami 图像就好了...你应该先测试 kafka-console-producer,但请显示你的 docker run 命令
-
您好,我正在使用 docker-compose 模块(添加到问题中);只是运行 docker-compose up -d
-
我没有答案,但仅供参考,您不再需要
zkNodes属性。 SCSt 不与 zookeeper 对话。 -
你是对的,只是尝试收集周围的东西:-(
标签: docker apache-kafka spring-cloud spring-kafka spring-cloud-stream