用于消费者自动缩放的 Kafka 分区

问题描述 投票:0回答:0

我们有一个 Kafka 集群,比如有 1000 个分区。目前,我们有一个运行在 100 个 pod(Kubernetes pod)上的消费者组。将消费者拓扑想象成这样,每个 pod 从 10 个 Kafka 分区消费,每个节点托管 2 个 pod。因此,此拓扑将需要 50 个节点。

现在,这就是我们想要做的。在高流量事件期间,我们希望增加 pod 的大小。为此,我们想再增加 50 个节点并将 50 个 pod 移动到这些节点,然后在 100 个节点上扩展 pod。如何在不重启所有消费者的情况下实现这一目标。

我能想到的一个解决方案(未经测试)是创建两个消费者组(cgrpA,cgrpB)并为他们每个提供 50 个分区。在这种情况下,我们可以在新节点上启动另一个消费者组 (cgrpC),让它赶上 cgrpB,然后关闭运行 cgrpB 的 pod。这可以实现吗?或者这是否是正确的方法?

kubernetes apache-kafka kafka-consumer-api autoscaling
© www.soinside.com 2019 - 2024. All rights reserved.