【问题标题】:Failed to connect to kafka cluster When running Kafka and Kafka-connect on different servers在不同服务器上运行 Kafka 和 Kafka-connect 时无法连接到 kafka 集群
【发布时间】:2020-08-14 12:53:30
【问题描述】:

我在不同的服务器上运行 Kafka 和 Kafka-connect(比如说 serverA 和 serverB)

用于 kafka 连接的服务器A

# vi /home/kafka/config/connect-distributed.properties

bootstrap.servers=serverB:9092
rest.host.name=localhost
rest.port=8083

用于 kafka 的服务器B

# vi server.properties 

broker.id=1
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://serverA:9092
delete.topic.enable = true

但是,当我在 serverA 上运行 kafka connect 时,出现错误。

[2020-04-30 16:59:37,053] ERROR Stopping due to error (org.apache.kafka.connect.cli.ConnectDistributed:84)
org.apache.kafka.connect.errors.ConnectException: Failed to connect to and describe Kafka cluster. Check worker's broker connection and security properties.
        at org.apache.kafka.connect.util.ConnectUtils.lookupKafkaClusterId(ConnectUtils.java:64)
        at org.apache.kafka.connect.util.ConnectUtils.lookupKafkaClusterId(ConnectUtils.java:45)
        at org.apache.kafka.connect.cli.ConnectDistributed.startConnect(ConnectDistributed.java:95)
        at org.apache.kafka.connect.cli.ConnectDistributed.main(ConnectDistributed.java:78)
Caused by: java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.TimeoutException: Call(callName=listNodes, deadlineMs=1588233577048) timed out at 1588233577049 after 1 attempt(s)
        at org.apache.kafka.common.internals.KafkaFutureImpl.wrapAndThrow(KafkaFutureImpl.java:45)
        at org.apache.kafka.common.internals.KafkaFutureImpl.access$000(KafkaFutureImpl.java:32)
        at org.apache.kafka.common.internals.KafkaFutureImpl$SingleWaiter.await(KafkaFutureImpl.java:89)
        at org.apache.kafka.common.internals.KafkaFutureImpl.get(KafkaFutureImpl.java:260)
        at org.apache.kafka.connect.util.ConnectUtils.lookupKafkaClusterId(ConnectUtils.java:58)
        ... 3 more
Caused by: org.apache.kafka.common.errors.TimeoutException: Call(callName=listNodes, deadlineMs=1588233577048) timed out at 1588233577049 after 1 attempt(s)
Caused by: org.apache.kafka.common.errors.TimeoutException: Timed out waiting for a node assignment.

仅供参考,如果我在 kafka 服务器(serverB)上运行 kafka connect,它可以工作。但是,我想在不同的服务器上运行这些。

如何将 kafka-connect 连接到 kafka?

【问题讨论】:

    标签: apache-kafka apache-kafka-connect


    【解决方案1】:

    在你的server.properties 你有

    advertised.listeners=PLAINTEXT://serverA:9092
    

    但 Kafka 连接使用

    bootstrap.servers=serverB:9092
    

    而不是

    bootstrap.servers=serverA:9092
    

    【讨论】:

    • 我想在不同的服务器上运行 kafka 和 kafka-connect。所以,我建立 serverA:kafka-connect,没有 kafka serverB:只有 kafka。我不能像这样构建服务器吗?
    • 我想在没有 kafka 的情况下使用 serverA。只使用kafka-connect。不可能吗?
    • 你能在不同的服务器上运行 kafka connect 和 kafka 吗?我在使用不同的服务器时遇到同样的错误
    猜你喜欢
    • 2017-12-15
    • 2021-03-10
    • 1970-01-01
    • 2021-03-28
    • 1970-01-01
    • 1970-01-01
    • 2019-11-27
    • 2021-07-29
    • 2021-08-28
    相关资源
    最近更新 更多