Кафка - Как определить пользователя и пароль в YM-файле Springboot? - PullRequest
0 голосов
/ 07 января 2019

Я установил kafka и определил имя пользователя и пароль как протокол SASL_PLAINTEXT, я сделал несколько примеров в консоли и могу отправлять сообщения в тему и получать эти сообщения, используя соответствующие учетные данные, теперь мне нужно скопировать эту конфигурацию в моем приложение для весенней загрузки,

Это мой файл application.yml:

server:
  port: 65498
spring:
  kafka:
    bootstrap-servers: ip:9092
    properties:
      security:
        protocol: SASL_PLAINTEXT
      sasl:
        mechanism: PLAIN
        jaas:
          config: org.apache.kafka.common.security.plain.PlainLoginModule required username="admin" password="admin-secret";
    producer:
      value-serializer: org.apache.kafka.common.serialization.StringSerializer

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

org.apache.kafka.clients.NetworkClient   : [Producer clientId=producer-1] Connection to node -1 could not be established. Broker may not be available.

Одна вещь, которую я замечаю, - если я не передаю файл attribute.properties производителю в консоли, он выдаст аналогичную ошибку:

WARN [Producer clientId=console-producer] Bootstrap broker localhost:9092 (id: -1 rack: null) disconnected (org.apache.kafka.clients.NetworkClient)

Может кто-нибудь помочь мне с этим вопросом?

Заранее спасибо.

1 Ответ

0 голосов
/ 15 января 2019

Я нашел решение, моя ошибка состояла в том, что на моем server.properties в kafka я определил advertised.listeners как SASL_PLAINTEXT://localhost:9092, поэтому мои клиенты пытались подключиться с помощью localhost, поэтому я изменил localhost на ip хоста, и он работает!

...