此问题在此处已有答案:
Connect to Kafka running in Docker(6个答案)
Apache Nifi ConsumeKafka is not reading Topics(1个答案)
13天前关闭
我有一个Kafka在docker中运行,它在docker-composit.yaml中的配置是
kafka:
image: quay.io/debezium/kafka:1.8
links:
- zookeeper
ports:
- 29092:29092
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092,PLAINTEXT_HOST://localhost:29092
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
字符串
我给出了这个配置,以便我可以将Kafka的数据发送到运行在https://127.0.0.1:8443/nifi上的Apachenifi的consumekafka处理器
在构建我的docker的compose文件时,我得到了错误**No resolvable bootstrap urls given in bootstrap. servers.**我想配置Kafka的环境,这样我就可以在apache nifi中访问我的docker之外的数据。如何配置它和配置后,我应该使用什么URL在consumekafka处理器?
请帮帮我
1条答案
按热度按时间qgzx9mmu1#
此错误表明Kafka客户端(在您的情况下,是NiFi中的ConsumeKafka处理器)无法连接到Kafka服务器。这通常是因为Kafka客户端中的bootstrap.servers属性配置不正确,或者因为客户端和服务器之间存在网络问题。
在Kafka的docker-compose配置中,以下环境变量设置了可以访问Kafka的地址:
字符串
这个配置说明Kafka可以从Docker网络中的
kafka:9092
和本地机器上的localhost:29092
访问。要从本地机器上运行的NiFi访问Kafka,您应该将ConsumeKafka处理器中的
bootstrap.servers
属性设置为localhost:29092
。这将告诉NiFi在正确的地址连接到Kafka。如果您在进行此更改后仍然遇到问题,请检查您的Docker和网络配置,以确保端口正确暴露,并且没有任何防火墙或其他网络安全设置可能会阻止连接。
请注意,虽然这种设置对于本地开发环境来说很好,但您可能需要采取其他安全措施,例如对生产系统使用加密和身份验证。例如,这可能涉及将
PLAINTEXT
协议更改为SASL_SSL
或SSL
。