1
votes

I am trying to configure the security protocol of the Kafka binder. As documented in the spring-cloud-stream reference the security.protocol property should exist in the spring.cloud.stream.kafka.binder.configuration hierarchy but this configuration is not being applied. I am getting the following warning:
**

WARN 17375 --- [ main] o.a.k.clients.consumer.ConsumerConfig : The configuration 'security' was supplied but isn't a known config.

**

My yaml snippet:

spring:
  cloud:
    stream:
      kafka:
        binder:
          brokers: localhost
          defaultBrokerPort: 9092
          zkNodes: localhost
          defaultZkPort: 2181
          minPartitionCount: 2
          replicationFactor: 1
          autoCreateTopics: true
          autoAddPartitions: true
          headers: type,message_id
          requiredAcks: 1
          configuration:
            security:
              protocol: SSL

I tried to debug the loading of the properties and it looks like that this property is being split and the configuration map is something like: {"security" : {"protocol" : "SSL"}} instead of {"security.protocol" : "SSL"}. I also tried to change the yaml file to:
configuration: security.protocol: SSL
But there was no difference.

EDIT: The Spring Cloud Stream version is Chelsea.SR2 and the Spring Boot version is 1.5.4.RELEASE.

1
What version of Spring Cloud Stream and Spring Boot are you using ?Marius Bogoevici
spring boot 1.5.4.RELEASE. spring cloud stream Chelsea.SR2Yossi Shasha

1 Answers

1
votes

A similar issue has been reported here: https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/129.

We're investigating whether this is an issue in Spring Cloud Stream or Spring Boot.