查看实例风险

云消息队列 Kafka 版实例的实时诊断功能能够定期对实例进行检测,支持查看诊断发现的问题、提供修复建议,并将异常的检查项上报告警给相关联系人,帮助您及时处理异常。

实现方案

image

检测项

说明

若检测出实例存在风险,请参考控制台上提示的修复建议进行修复。

风险类型

指标等级

诊断结果

修复建议

风险复查

发送IOPS

  • 重要

  • 尽快修复

发送IOPS消耗:xx%

生产IOPS超出集群规格限制可能会产生稳定性问题,请及时将以下相关问题修复,可减少生产IOPS消耗。

仪表盘查看实例生产次数(即生产IOPS),检查是否超过规格限制值。具体规格限制请参见使用限制

消费IOPS

  • 重要

  • 尽快修复

消费IOPS消耗:xx%

消费IOPS超出集群规格限制可能会产生稳定性问题,请及时将以下相关问题修复,可减少消费IOPS消耗。

仪表盘查看实例消费次数(即消费IOPS),检查是否超过规格限制值。具体规格限制请参见使用限制

生产消息格式转换耗时

  • 重要

  • 尽快修复

生产消息格式转换耗时TP98为:xx ms

相关问题里的Topic存在格式转换现象,影响整体发送性能,请将发送客户端与服务端版本对齐。

检查相关问题里Topic的生产客户端,是否与服务端版本不一致。

消费消息格式转换时间

  • 重要

  • 尽快修复

消费消息格式转换耗时TP98为:xx ms

存在格式转换现象,影响整体消费性能,请将消费客户端与服务端版本对齐。

检查消费客户端,是否与服务端版本不一致。

Topic格式转换

  • 一般

  • 重要

xxTopic存在格式转换

相关问题里的Topic存在格式转换现象,有可能会影响整体发送性能,请将发送客户端与服务端版本对齐,减少格式带来的性能损耗。

检查相关问题里Topic的生产客户端,是否与服务端版本不一致。

Group订阅过多的Topic

  • 一般

  • 重要

xxGroup订阅过多的Topic

Group订阅过多的Topic,容易引发Rebalance事件,影响整体消费性能,如果非业务特殊需求,建议尽量保持GroupTopic订阅关系单一性,详情请参见订阅者最佳实践

Group订阅的Topic数量超过1个时,将会触发告警。

使用Sarama Go客户端

  • 一般

  • 重要

xxGroup使用Sarama Go客户端进行消费

相关问题里的Group使用了Sarama Go客户端,Sarama Go客户端存在不少已知问题,不推荐使用,详情请参见为什么不推荐使用Sarama Go客户端收发消息?

消费客户端使用了Sarama Go进行位点提交,会出现告警。

Rebalance超时时间

  • 一般

  • 重要

xxGroup 存在Rebalance 超时情况

相关问题里的Group存在Rebalance TimeOut时间过长现象,建议max.poll.interval.ms不要设置得太长,否则会影响KafkaRebalance,导致Rebalance的耗时过长。

到相关问题的Group详情页面,查看Rebalance详情。

消费客户端主动离开队列

  • 重要

  • 尽快修复

xxGroup消费者主动离开队列触发Rebalance事件

相关问题里的Group存在消费客户端主动离开队列并触发Rebalance:

  • 请确认消费客户端是否卡住。

  • 请确认消费客户端配置是否合理。

具体详情请参见为什么消费客户端频繁出现Rebalance?

到相关问题的Group详情页面,查看Rebalance详情。

消费接收数据耗时较大的Group

  • 一般

  • 重要

xxGroup消费接收数据耗时较大

相关问题里的Group存在消费耗时较大的现象,可能有如下原因:

  • 消费客户端参数fetch.max.bytes设置过大。

  • 客户端网络环境较差。

优化方案请参见订阅者最佳实践

消费客户端自行检查消费耗时。

分区数量配额

  • 重要

  • 尽快修复

分区数量配额剩余:xx

分区数量配额即将用完。

实例详情页查看当前所有的分区数量。

服务端小版本升级

  • 重要

  • 尽快修复

当前服务端小版本落后最新小版本xx个版本

最新的小版本修复了若干的已知开源Bug, 并且提升了集群整体性能和稳定性,为了您的服务稳定性, 建议您尽快升级服务端小版本。

实例详情页查看到小版本具体情况。

单节点TCP连接数

  • 重要

  • 尽快修复

单节点TCP连接数为:xx

TCP总连接数过多,会影响集群整体稳定性。

  • 请检查您的连接方式,是否存在重复实例化连接对象的问题。

  • 如果客户端数量较多,会导致碎片化发送严重, 建议减少客户端, 并调整发送参数batch.sizelinger.ms,将数据攒批聚合后再发送。

  • 如果连接数持续上升, 有可能导致部分连接无法连接。

仪表盘/Prometheus查看实例节点(TCP)最大连接数,超过规格限制值会告警。具体规格限制请参见使用限制

单节点公网TCP连接数

  • 重要

  • 尽快修复

单节点公网TCP连接数为:xx

公网TCP总连接数过多,会影响集群整体稳定性。

  • 请检查您的连接方式,是否存在重复实例化连接对象的问题。

  • 如果客户端数量较多,会导致碎片化发送严重, 建议减少客户端, 并调整发送参数batch.sizelinger.ms,将数据攒批聚合后再发送。

  • 如果连接数持续上升, 有可能导致部分连接无法连接。

  • 公网连接是一种重量级连接, 性能较差,建议只用于开发测试, 线上环境尽量使用VPC连接方式。

仪表盘/Prometheus查看实例节点公网(TCP)最大连接数,超过规格限制值会告警。具体规格限制请参见使用限制

同步发送问题

  • 重要

  • 尽快修复

xxTopic存在同步发送问题

相关问题中的Topic存在使用acks=all的同步刷盘机制问题,导致整体发送性能较差,会影响集群整体处理效率,如果不是业务特殊需求,建议设置acks=1,可大幅提升发送效率,详情请参见发布者最佳实践

检查相关问题Topic的发送客户端,是否配置了ackall或者-1

碎片化发送问题

  • 重要

  • 尽快修复

xxTopic 存在碎片化发送问题

相关问题中的Topic存在碎片化发送问题, 有可能导致发送排队超时,并且影响集群整体发送吞吐量和稳定性。为了提高发送性能, 建议:

  • 根据业务情况, 合理设置batch.sizelinger.ms参数。

  • 如果分区较多的情况下, 推荐使用“黏性分区”发送策略。

详情请参见发布者最佳实践

发送的batchSize小于4KB且节点CPU使用率大于60%时会出现告警。需要合理配置相关问题Topic的发送客户端参数,推荐客户端版本在2.4.0及以上。

单分区Topic风险

  • 重要

  • 尽快修复

目前有xxTopic为云存储的单分区

使用云存储的单分区Topic无法充分发挥集群性能,可能导致负载不均,并且容易造成单节点限流。建议增加分区。

检查相关问题Topic的分区数。

节点发送流量

  • 重要

  • 尽快修复

节点发送流量已经超流:xx%

节点发送流量达到上限,为了实例的稳定性,请尽快进行实例升配。

没有单节点监控,可以检查实例生产限流时间(ms)是否已经造成生产限流。

节点消费流量

  • 重要

  • 尽快修复

节点消费流量已经超流:xx%

节点消费流量达到上限,为了实例的稳定性,请尽快进行实例升配。

没有单节点监控,可以检查实例消费限流时间(ms)是否已经造成消费限流。

发送流量

  • 重要

  • 尽快修复

发送流量已经超流:xx%

集群生产流量达到上限,部分生产流量可能会被限流,导致生产发送超时,为了不影响您的业务和集群的稳定性,请尽快进行实例升配。

仪表盘检查实例生产速率(业务实际流量),以及检查实例生产限流时间(ms)是否已经造成生产限流。

消费流量

  • 重要

  • 尽快修复

消费流量已经超流:xx%

集群消费流量达到上限,部分消费流量可能会被限流,导致部分消息数据不能被及时消费而产生堆积,为了不影响您的业务和集群的稳定性,请尽快进行实例升配。

仪表盘检查实例消费速率,以及检查实例消费限流时间(ms)是否已经造成消费限流。

消费位点提交频率

  • 重要

  • 尽快修复

消费客户端每秒提交xx次消费位点

消费客户端过于频繁提交消费位点, 会影响集群整体性能和稳定性, 建议改为自动提交消费位点的方式, 或者降低提交消费位点的频率。下面展示了提交位点频率前十的Group信息,优化方案请参见订阅者最佳实践

仪表盘查看实例Api请求次数,选中OffsetCommit,超过规格限制值会告警。具体规格限制请参见使用限制

一天内存在RebalanceGroup

  • 一般

  • 重要

xxGroup 一天内触发了Rebalance事件

相关问题里的Group一天内存在Rebalance现象。具体的时间,请参见Group详情页面。同时,确认是否因为消费客户端配置不当而引起,详情请参见为什么消费客户端频繁出现Rebalance?

检查相关问题GroupRebalance详情。

消费位点回退

  • 重要

  • 尽快修复

xxGroup存在消费位点回退

相关问题里的Group存在消费位点回滚现象,可能触发了位点重置。

消费客户端自行检查是否提交了历史位点,导致消费位点出现回退。

使用GZIP压缩

  • 重要

  • 尽快修复

xxTopic使用了GZIP压缩

相关问题里的Topic存在GZIP压缩,会增加集群负载,请及时进行优化。

生产客户端自行检查是否配置了GZIP压缩。

消息格式版本过低

  • 重要

  • 尽快修复

xxTopic存在消息格式版本过低(< v2)的问题,可能导致无法生产/消费消息

使用较低版本的Kafka消息格式可能导致服务端CPU使用率上升、吞吐性能下降及兼容性和安全性等问题。发送消息和消费消息格式版本需大于V1。具体详情请参见使用限制

检查相关问题Topic的生产客户端版本是否过低。

Group数量过多

  • 重要

  • 尽快修复

Group总数为:xx

过多的消费者组可能导致服务端协调负载增加、元数据管理复杂性提高,从而影响性能和故障恢复时间。具体详情请参见使用限制

实例详情页查看当前所有的Group数量。

事务hang问题

  • 重要

  • 尽快修复

xx个事务存在hang住的问题

存在事务提交超时现象,请尽快进行处理。

存在事务超时情况,提工单处理。

操作步骤

  1. 登录云消息队列 Kafka 版控制台,在概览页面的资源分布区域,选择地域。

  2. 实例列表页面,单击目标实例名称。

  3. 实例详情页面,选择服务治理 > 实例风险

    实例风险页面中,查看实例风险项。

    参数

    描述

    示例值

    风险类型

    当前实例风险的类型描述。

    消费接收数据耗时较大的 Group

    指标等级

    当前实例指标的等级。取值:

    • 尽快修复

    • 重要

    • 一般

    紧急

    风险状态

    当前实例的健康状态。取值:

    • 待修复

    • 已修复

    待修复

    上次发现风险时间

    上次发现该风险的时间。

    2022331

    操作

    当前实例风险项可以执行的动作。

    • 详情:查看当前实例风险详细信息和修复建议。

      在目标风险操作列,单击详情

    • 修改报警状态:风险修复后,您可以设置风险状态已修复,或者在近一个月内忽略未修复的风险。

      在目标风险操作列,单击修改报警状态

      说明

      风险修复后,不会再发送告警通知。如果风险修复后,出现相同的风险,系统会在7天后再次发送风险报警通知。