问题描述
使用阿里云消息队列Kafka版时,删除Group后,仍然收到消息堆积的告警信息,如何过滤某个Group的消费堆积告警。
问题原因
发生消息堆积告警信息的原因如下:
- 2.2.0以前的Kafka服务端版本,开源Kafka未提供删除Group和消费位点的OpenAPI,因此删除Group,只是从控制台逻辑删除,并不会实际删除服务端消费位点等信息。堆积告警是根据消息位点判断处理的,因此您还会收到堆积告警。
- 删除Group后,消费线程未停止或者未发生Rebalance,那么消费线程还可以继续正常消费,因此还会收到堆积告警。
解决方案
删除Group后,如果您不希望继续收到消息堆积的告警信息,请参见以下操作进行处理:
- 确认服务端版本,请根据服务端版本情况执行以下操作:
- 2.2.0及以上版本直接删除Group,即可删除消费位点。如果删除Group后,仍收到告警信息,请联系消息队列Kafka版的技术支持协助排查。
- 2.2.0以前的版本,请根据情况选择以下任意一种方式操作:
- 确保Group存在的情况下,通过控制台按分区重置位点方式将各分区的消费位点重置到0,详情请参见重置消费位点。
- 将服务端版本升级至2.2.0及以上,重新创建Group,再删除。关于如何升级服务端版本,请参阅升级实例版本。
- 等待位点过期(过期时间为消费位点保留时间)。消息队列Kafka版的消费位点保存在一个内部Topic中,无法直接删除。位点在超过消费位点保留期限后,如果没有任何更新,就会被过期清理。消费位点保留时间的配置方法请参见变更消息配置。
注意:只要Group内有任一存活的消费者线程,即使该Group下的消费位点超过了消费位点保留时间,消费位点不会被删除。更多信息,请参见为什么消费位点过期了却仍未被删除。
- 如果以上方法无法解决您的问题,您可以禁用消息堆积的监控告警。关于如何禁用消息堆积的告警规则,您可以参阅监控告警。
相关文档
适用于
- 消息队列Kafka版