Kafka AdminClient запускается дважды - PullRequest
0 голосов
/ 25 марта 2020

Я надеюсь, что смогу объяснить это!

Я запускаю докернизированное java приложение для весенней загрузки, которое будет подключаться к одному докеризованному экземпляру Kafka.

Для этого я настроил ссылку в docker -компонентном файле это позволит приложению подключаться к kafka docker с именем kafka-cluster через порт 9092.

. Когда я запускаю оба контейнера, в приложении java появляется сообщение о том, что оно не может подключиться к KafkaAdmin:

[AdminClient clientId=adminclient-2] Connection to node -1 (localhost/127.0.0.1:9092) could not be established. Broker may not be available.

Но он пытается подключиться к localhost / 127.0.0.1.

Далее в журналах я вижу, что он начал подключение к KafkaAdmin дважды: сначала:

2020-03-25 13:53:15.515  INFO 7 --- [           main] o.a.k.clients.admin.AdminClientConfig    : AdminClientConfig values: 
        bootstrap.servers = [kafka-cluster:9092]
        client.dns.lookup = default
        client.id = 
        connections.max.idle.ms = 300000
        <more properties>

, а затем снова сразу после (но на локальном хосте):

2020-03-25 13:53:15.780  INFO 7 --- [           main] o.a.k.clients.admin.AdminClientConfig    : AdminClientConfig values: 
        bootstrap.servers = [localhost:9092]
        client.dns.lookup = default
        client.id = 
        connections.max.idle.ms = 300000
        <more properties>

Это конфигурация:

    @Bean
    public KafkaAdmin kafkaAdmin() {
        Map<String, Object> configs = new HashMap<>();
        configs.put(AdminClientConfig.BOOTSTRAP_SERVERS_CONFIG, bootstrapServers);
        return new KafkaAdmin(configs);
    }

    @Bean
    public NewTopic sysCcukCdcAssetsCreate() {
        return new NewTopic(newPanelTopic, 1, (short) 1);
    }

    @Bean
    public NewTopic sysCcukCdcAssetsUpdate() {
        return new NewTopic(updatedPanelTopic, 1, (short) 1);
    }

где bootstrapServers = kafka-cluster:9092

Я не могу понять, почему кажется, что у KafkaAdmin есть 2 набора конфигов, но кажется, что это вызывает ошибку.

Массовые указания или предложения оценил:)

1 Ответ

0 голосов
/ 25 марта 2020

Так! Это была отличная резиновая утка.

Оказывается, свойство spring.kafka.bootstrap.servers не было задано в файле свойств, и по умолчанию localhost установлено значение kafka-cluster:9092 исправлено:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...