首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法从网络设备正确地发送给kafka-docker

无法从网络设备正确地发送给kafka-docker
EN

Stack Overflow用户
提问于 2020-04-19 12:20:38
回答 1查看 255关注 0票数 0

我正在尝试在我的主机maschine上安装Kafka / Docker,并从网络设备连接到它。我用的是比特尼/卡夫卡。这是我的停靠-撰写文件:

代码语言:javascript
复制
version: '2'

services:
  zookeeper:
    image: 'bitnami/zookeeper:3'
    ports:
      - '2181:2181'
    volumes:
      - 'zookeeper_data:/bitnami'
    environment:
      - ALLOW_ANONYMOUS_LOGIN=yes
  kafka:
    image: 'bitnami/kafka:2'
    ports:
      - '9092:9092'
      - '29092:29092'
    volumes:
      - 'kafka_data:/bitnami'
    environment:
      - KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
      - ALLOW_PLAINTEXT_LISTENER=yes
      - KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
      - KAFKA_CFG_LISTENERS=PLAINTEXT://:9092,PLAINTEXT_HOST://:29092
      - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://kafka:9092,PLAINTEXT_HOST://localhost:29092
    depends_on:
      - zookeeper

volumes:
  zookeeper_data:
    driver: local
  kafka_data:
    driver: local

当我在我的主机maschine上运行我的python脚本(而不是在docker中)并且我的主机名是水银时,它工作得很好:

代码语言:javascript
复制
from kafka import KafkaProducer

producer = KafkaProducer(bootstrap_servers=['mercury:29092'])
print("Connected")
producer.send('topic', b'It works!')
print('Theoretically send')
producer.close()
print('Closed')

当我试图从另一个网络设备运行相同的脚本时,它不起作用。我连一个错误都没有。脚本也运行良好,因此在尝试连接或发送时不会有任何延迟。那只会在我被发现的时候发生。使用错误的端口或不存在的主题。特别是最后一部分,让我们相信脚本可以连接,但不能正确发送消息。我不知道为什么会这样。我的端口设置是正确的还是我需要一些额外的卡夫卡环境设置?

提前感谢您的帮助

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-19 14:50:15

问题在于卡夫卡的广告听众的结构。

TL/DR; Change PLAINTEXT_HOST://localhost:29092PLAINTEXT_HOST://mercury:29092 in KAFKA_CFG_ADVERTISED_LISTENERS,您的卡夫卡集群应该可以从其他机器访问。

在更复杂的网络中,可能希望有一个内部网络和一个外部网络,例如由于不同的安全需求。卡夫卡允许通过分别设置listenersadvertised.listeners来区分那些。advertised.listeners的条目应该表示可以从集群之外的客户端访问Kafka集群的URL。如果这仅限于localhost,那么除了主机之外,没有任何机器可以连接到集群。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61304223

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档