在我的项目中,我需要通过SSL连接到两个不同的Kafka代理。
我的application.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: ...
...
但这对我的案子不起作用,也没有任何意义
发布于 2021-12-06 15:08:59
您需要将这些放在YAML中的每个environment
节点下。
发布于 2021-12-08 13:49:05
多亏了加里·拉塞尔( Gary ),我以这样的工作属性结束了:
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*
https://stackoverflow.com/questions/70212072
复制相似问题