Не удалось подключиться к кластеру kafka При запуске Kafka и Kafka-connect на разных серверах - PullRequest
1 голос
/ 30 апреля 2020

Я запускаю Kafka и Kafka-connect на разных серверах (скажем, serverA и serverB)

serverA для kafka connect

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

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

serverB для kafka

# vi server.properties 

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

Но когда я запускаю kafka connect на сервере A, я получаю сообщение об ошибке.

[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 connect на сервере kafka (serverB), это сработало. но я хочу запустить их на другом сервере.

Как я могу подключить kafka-connect к kafka?

1 Ответ

1 голос
/ 30 апреля 2020

В вашем server.properties у вас есть

advertised.listeners=PLAINTEXT://serverA:9092

, но Kafka connnects использует

bootstrap.servers=serverB:9092

вместо

bootstrap.servers=serverA:9092
...