Spring 具有多个 Kafka 绑定器的 Cloud Dataflow
Spring Cloud Dataflow with multiple Kafka binders
我正在尝试使用 Spring Cloud Dataflow 通过 Bridge 应用桥接两个 Kafka 集群(本质上是一个奇特的 MirrorMaker 实例)。正如文档中所述,我定义了两个活页夹。 Kafka-qa1 应该是默认值,并且可以在定义或部署属性中提供 kafka-qa2 作为输出绑定器,例如:
app.bridge.spring.cloud.stream.bindings.output.binder=kafka-qa2
我的 SCDF application.yaml 包含两个活页夹:
spring:
cloud:
dataflow:
applicationProperties:
stream:
spring:
cloud:
stream:
defaultBinder: kafka-qa1
binders:
kafka-qa1:
type: kafka
environment:
spring:
brokers: qa-1.example.com:9093
zk-nodes: qa-1.example.com:2181
kafka-qa2:
type: kafka
environment:
spring:
brokers: qa-2.example.com:9093
zk-nodes: qa-2.example.com:2181
但是它似乎忽略了输出活页夹。我还在我的配置中保留了与单个活页夹一起使用的部分(如下)。如果我删除它,defaultBinder 选项似乎不起作用,它会恢复到本地主机。
kafka:
binder:
brokers: qa-1.example.com:9093
关于使用 Bridge 应用程序连接多个 Kafka 集群,有什么想法或示例可以向我指出吗?
environment
令牌似乎缺少 brokers
和 zk-nodes
的 spring.cloud.stream.kafka.binder
前缀。请看下面。
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka-qa1.type=kafka
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka-qa1.environment.spring.cloud.stream.kafka.binder.brokers=qa-1.example.com:9093
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka-qa1.environment.spring.cloud.stream.kafka.binder.zkNodes=qa-1.example.com:2181
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka2.type=kafka
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka-qa2.environment.spring.cloud.stream.kafka.binder.brokers=qa-2.example.com:9093
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka-qa2.environment.spring.cloud.stream.kafka.binder.zkNodes=qa-2.example.com:2181
我正在尝试使用 Spring Cloud Dataflow 通过 Bridge 应用桥接两个 Kafka 集群(本质上是一个奇特的 MirrorMaker 实例)。正如文档中所述,我定义了两个活页夹。 Kafka-qa1 应该是默认值,并且可以在定义或部署属性中提供 kafka-qa2 作为输出绑定器,例如: app.bridge.spring.cloud.stream.bindings.output.binder=kafka-qa2
我的 SCDF application.yaml 包含两个活页夹:
spring:
cloud:
dataflow:
applicationProperties:
stream:
spring:
cloud:
stream:
defaultBinder: kafka-qa1
binders:
kafka-qa1:
type: kafka
environment:
spring:
brokers: qa-1.example.com:9093
zk-nodes: qa-1.example.com:2181
kafka-qa2:
type: kafka
environment:
spring:
brokers: qa-2.example.com:9093
zk-nodes: qa-2.example.com:2181
但是它似乎忽略了输出活页夹。我还在我的配置中保留了与单个活页夹一起使用的部分(如下)。如果我删除它,defaultBinder 选项似乎不起作用,它会恢复到本地主机。
kafka:
binder:
brokers: qa-1.example.com:9093
关于使用 Bridge 应用程序连接多个 Kafka 集群,有什么想法或示例可以向我指出吗?
environment
令牌似乎缺少 brokers
和 zk-nodes
的 spring.cloud.stream.kafka.binder
前缀。请看下面。
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka-qa1.type=kafka
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka-qa1.environment.spring.cloud.stream.kafka.binder.brokers=qa-1.example.com:9093
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka-qa1.environment.spring.cloud.stream.kafka.binder.zkNodes=qa-1.example.com:2181
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka2.type=kafka
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka-qa2.environment.spring.cloud.stream.kafka.binder.brokers=qa-2.example.com:9093
spring.cloud.dataflow.applicationProperties.stream.spring.cloud.stream.binders.kafka-qa2.environment.spring.cloud.stream.kafka.binder.zkNodes=qa-2.example.com:2181