8.5. 升级消费者以合作重新平衡

您可以升级 Kafka 用户和 Kafka Streams 应用程序,以使用 增量合作重新平衡 协议进行分区重新平衡,而不是默认的预先 重新平衡 协议。在 Kafka 2.4.0 中添加了新协议。

消费者将分区分配保持在合作重新平衡状态,并仅在流程结束时予以撤销(如果需要)来实现平衡集群。这可减少使用者组或 Kafka Streams 应用程序的不可用。

注意

升级到增量合作重新平衡协议是可选的。预先重新平衡协议仍然受到支持。

先决条件

流程

要升级 Kafka 消费者以使用增量合作重新平衡协议:

  1. 将 Kafka client .jar 文件替换为新版本。
  2. 在使用者配置中,将 合作粘滞 附加到 partition.assignment.strategy。例如,如果设定了 范围 策略,请将配置更改为 范围,协作粘性
  3. 依次重新启动组中的每个使用者,等待使用者在每次重启后重新加入组。
  4. 通过从使用者配置中删除先前的 partition.assignment.strategy 来 重新配置组中的每个消费者,仅保留 协作式 策略。
  5. 依次重新启动组中的每个使用者,等待使用者在每次重启后重新加入组。

升级 Kafka Streams 应用程序以使用增量合作重新平衡协议:

  1. 将 Kafka Streams .jar 文件替换为新版本。
  2. 在 Kafka Streams 配置中,将 upgrade.from 配置参数设置为您要从中升级的 Kafka 版本(例如 2.3)。
  3. 依次重新启动每个流处理器(节点)。
  4. 从 Kafka Streams 配置中删除 upgrade.from 配置参数。
  5. 依次重新启动组中的每个消费者。

其它资源