有没有一种方法可以配置 kafka,以便复制流量发生在一个网络上,而消费者通过另一个网络进行连接。从文档中可以看出,代理和消费者都会使用advertized.listeners
参数。我想分离这些流量。
最佳答案
是的,您可以将 Kafka 配置为对用户和复制流量使用不同的网络接口(interface)。
首先,让我们为我们的接口(interface)定义一些好听的名称。例如,使用 SASL_SSL
进行外部流量的 USERS
接口(interface),以及仅使用 SSL
进行复制的另一个接口(interface) REPLICATION
(您可以将任何您想要的协议(protocol)映射到名称,SASL_SSL
和 SSL
只是示例):
listener.security.protocol.map=USERS:SASL_SSL,REPLICATION:SSL
然后定义监听器:
listeners=USERS://:9092,REPLICATION://:9093
advertised.listeners=USERS://some-network:9092,REPLICATION://another-network:9093
最后设置代理间协议(protocol):
inter.broker.listener.name=REPLICATION
在此示例中,您将为用户提供 some-network:9092
作为引导地址。
花点时间阅读有关每个设置的文档:http://kafka.apache.org/documentation/#brokerconfigs
关于apache-kafka - 我是否可以配置 kafka,以便使用者使用一个网络接口(interface),而集群复制使用另一个网络接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49453948/