#spring-boot #spring-kafka #spring-cloud-stream-binder-kafka
#пружинный ботинок #весна-кафка #spring-cloud-stream-binder-kafka
Вопрос:
В моем проекте мне нужно подключиться к двум разным брокерам Kafka через SSL
Мое заявление.yml выглядит примерно так:
spring: cloud: stream: binders: kafka-1: type: kafka environment: spring: cloud: stream: kafka: binder: brokers: *url-1* kafka-2: type: kafka environment: spring: cloud: stream: kafka: binder: brokers: *url-2*
Это работает, если нет необходимости в авторизации на сервере kafka.
Но дело в том, что мне нужно использовать разные настройки SSL для них обоих!
Единственное свойство, в котором я нашел возможность использовать разные настройки ssl, — это:
spring: kafka: producer: ssl: trust-store-location: ... ... consumer: ssl: trust-store-location: ... ...
но это не работает в моем случае и тоже не имеет никакого смысла
Ответ №1:
Вам нужно поместить их под каждый environment
узел в YAML.
Ответ №2:
Благодаря Гэри Расселу я закончил с такими рабочими объектами, как этот:
spring: cloud: stream: binders: kafka-1: type: kafka environment: spring: kafka: ssl: protocol: SSL key-store-location:... key-password:... trust-store-location:... trust-store-password:... cloud: stream: kafka: binder: confuguration: security.protocol: SSL ssl.endpoint.identification.algorithm: '' brokers: *url-1* kafka-2: type: kafka environment: spring: cloud: stream: kafka: binder: brokers: *url-2*