问题现象
使用阿里云云消息队列 Kafka 版时,删除Group后,仍然收到消息堆积的告警信息。
可能原因
发生消息堆积告警信息的原因如下:
2.0.0以前的Kafka服务端版本,开源Kafka未提供删除Group和消费位点的OpenAPI,因此删除Group,只是从控制台逻辑删除,并不会实际删除服务端消费位点等信息。堆积告警是根据消息位点判断处理的,因此您还会收到堆积告警。
删除Group后,消费线程未停止或者未发生Rebalance,那么消费线程还可以继续正常消费,因此还会收到堆积告警。
解决方案
删除Group后,如果您不希望继续收到消息堆积的告警信息,请参见以下操作进行处理:
确认服务端版本,请根据服务端版本情况执行以下操作:
2.2.0及以上版本,请根据以下方式操作:
若Group中没有存活的消费者线程(存活的消费者线程即以Subscribe方式订阅的消费者线程),直接删除Group,如果删除Group后,仍然收到告警信息,请排查是否有消费线程在提交消费位点。
若Group内有任一存活的消费者线程,则可以将不需要统计消息堆积的分区的消费位点重置到位点0,该分区的堆积信息将不再被统计。具体操作,请参见重置消费位点。
2.2.0以前的版本,请根据情况选择如下一种方式操作:
说明在2.2.0及以上版本中,只要Group内有任一存活的消费者线程,即使该Group下的消费位点超过了消费位点保留时间,消费位点不会被删除。更多信息,请参见为什么消费位点过期了却仍未被删除?。
如果以上方法无法解决您的问题,您可以禁用消息堆积的监控告警。关于如何禁用消息堆积的告警规则,请参见云监控。