Установить хост и порт zookeeper для spring-cloud-bus - PullRequest
0 голосов
/ 15 мая 2018

У меня есть проект с spring-cloud-starter-bus-kafka, и я задаю URL-адрес kafka внутри application.yml примерно так:

spring.kafka.bootstrap-servers=localhost:9092

Это работает, когда локально развернуты kafka и zookeeper,но если я перенесу kafka и zookeeper на их собственные серверы, то при запуске spring-boot выдается ошибка:

Новая конфигурация

spring.kafka.bootstrap-servers=192.168.0.120:9092

Ошибка

{
    "@timestamp" : "2018-05-15T14:56:45.628+00:00",
    "message" : "Opening socket connection to server localhost/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown error)",
    "logger_name" : "org.apache.zookeeper.ClientCnxn",
    "thread_name" : "main-SendThread(localhost:2181)",
    "level" : "INFO"
}
{
    "@timestamp" : "2018-05-15T14:56:45.629+00:00",
    "message" : "Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect",
    "logger_name" : "org.apache.zookeeper.ClientCnxn",
    "thread_name" : "main-SendThread(localhost:2181)",
    "level" : "WARN",
    "stack_trace" : "java.net.ConnectException: Connection refused
        at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
        at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717)
        at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:361)
        at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1141)"
}

Как мне настроить kafka и zookeeper для подключения к их серверам?

Ответы [ 2 ]

0 голосов
/ 11 ноября 2018

В документации Spring есть раздел об этом:

https://docs.spring.io/spring-cloud-stream/docs/Ditmars.SR3/reference/htmlsingle/index.html#_kafka_binder_properties

Вы можете заменить URL по умолчанию на Application.yml

spring:
  cloud:
    stream:
      kafka:
        binder:
          zkNodes: ADDRESS:PORT
          brokers: ADDRESS:PORT

или используя .properties

spring.cloud.stream.kafka.binder.zkNodes = ADDRESS:PORT
0 голосов
/ 15 мая 2018

Какую версию вы используете? В версии 2.0 подключение к zookeeper не требуется.

В более ранних версиях вам нужно установить spring.cloud.stream.kafka.binder.zkNodes.

Документация Spring Cloud Stream здесь .

...