我们有一个消费者服务,它总是试图使用消费者组从主题中读取数据。由于重新部署,我们的Kafka集群会定期关闭并重新创建。
每当集群再次出现时,我们观察到,尽管前面的主题被拾取(可能来自zookeeper(,但之前的消费者组并没有被创建。正因为如此,我们正在运行的由以前的消费者组创建的消费者流程会陷入困境,永远不会出现。
消费者群体的行为应该是这样吗?或者我们需要在某个地方启用配置吗?
非常感谢您的帮助。
Kafka Brokers保留健康消费者和消费者组的缓存,如果整个集群被破坏/重新创建,它将不再知道这些消费者和组,包括偏移。使用者必须从主题开始重新连接并重新建立组和偏移。
从操作上讲,让Kafka集群长期运行,并以滚动的方式进行版本升级,这样就不会中断服务,这更有意义。