Не удается подключиться к брокеру Kafka с помощью Spring Boot

У меня есть стандартная установка Spring Boot с некоторой конфигурацией Kafka, в которой есть @Listener:

@SpringBootApplication
public class MyApp {

  public static void main(String[] args) {
    SpringApplication.run(MyApp.class, args);
  }

}
@EnableKafka
@Configuration
class KafkaConfig {

    @KafkaListener(id = "my_id", groupId = "my_id", topics = "some_topic")
    public void listen(String in) {
        // ...
    }
}

и когда я запускаю это, я не вижу нового потребителя в пользовательском интерфейсе администратора Kafka, но я вижу это повторяющееся до тошноты в журнале:

2023-04-21 09:21:50.043  INFO 14284 --- [ e2e_test-0-C-1] org.apache.kafka.clients.NetworkClient   : [Consumer clientId=consumer-my_id-1, groupId=my_id] Node -1 disconnected.
2023-04-21 09:21:50.043  WARN 14284 --- [ e2e_test-0-C-1] org.apache.kafka.clients.NetworkClient   : [Consumer clientId=consumer-my_id-1, groupId=my_id] Connection to node -1 (localhost/127.0.0.1:9092) could not be established. Broker may not be available.
2023-04-21 09:21:50.043  WARN 14284 --- [ e2e_test-0-C-1] org.apache.kafka.clients.NetworkClient   : [Consumer clientId=consumer-my_id-1, groupId=my_id] Bootstrap broker localhost:9092 (id: -1 rack: null) disconnected

Почему он пытается подключиться к брокеру на локальном хосте, когда я настроил его для подключения в другом месте моего application.yml?

config:
  kafka:
    servers: "my.server:9092"
    ssl: false

Какую ссылку вы использовали для настройки этой конфигурации yaml? Где ваш класс конфигурации, который на самом деле автоматически подключается kafka.servers или создает фабрику потребителей?

OneCricketeer 21.04.2023 15:55

Как оказалось его использует Camel, я просто не использую Camel в своем проекте (взял конфиг с другого микросервиса). Мой плохой 😅

Adam Arold 21.04.2023 20:57
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
2
160
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Клиент Kafka в Spring Boot управляется свойствами конфигурации с префиксом spring.kafka.*:

spring:
  kafka:
    bootstrap-servers: my.server:9092

Смотрите документы: https://docs.spring.io/spring-kafka/reference/html/

Другие вопросы по теме

Обертка REST API в методы CRUD базы данных Spring, чтобы его можно было использовать в качестве @Repository
Атрибут 'url' не указан, и встроенный источник данных не может быть настроен. Не удалось определить подходящий класс водителя
Сборка приложения Spring Boot развернута/собирается успешно, но происходит сбой из-за отсутствия основного атрибута манифеста в .jar (Maven)
Как пометить и отправить образ Docker, созданный с помощью spring-boot:build-image, в действии github?
Получение ошибки «дубликат значения ключа нарушает уникальное ограничение» при сохранении объектов с помощью Hibernate
Как получить доступ к базе данных из фильтра сервлетов jakarta?
Spring Boot 3 работает на встроенном Tomcat, но не на внешнем Tomcat
GCP Secret Manager: переменные среды и секреты не разрешены в приложении Spring Boot
Что мне делать, чтобы избежать чрезмерных SELECT для ролей при работе с Spring Security?
Джексон JAXB игнорирует JSONProperty, когда аннотации XMLProperty и XMLElementWrapper