Skip to Main Content

巡检规则管理

本文介绍 AutoMQ Copilot for RocketMQ 巡检规则的概念定义、管理操作以及完整的巡检规则列表明细。

本文中提及的 RocketMQ Copilot 术语是 AutoMQ Copilot for RocketMQ 的简称,均特指安托盟丘(杭州)科技有限公司面向 Apache RocketMQ 设计实现的消息队列智能辅助运维系统。

定义

参考概述▸ ,巡检规则是 RocketMQ Copilot 中针对一个或者多个资源的一个或者多个Metrics指标、状态而定义的检查规则。

巡检规则的作用如下:

  • 约定巡检的目标资源,是集群节点还是 Topic 或者 ConsumerGroup。
  • 约定巡检的执行行为,例如巡检周期、异常检测条件、是否可以跳过部分资源等。
  • 约定巡检的结果,产生什么类型的异常事件。

内部属性

属性:资源类型

资源类型是指 RocketMQ Copilot 巡检规则每个巡检规则项的检查目标是什么粒度的资源,主要支持如下资源类型:

  • 集群:该类型的巡检规则检查 RocketMQ Broker 集群,包括全局的配置、broker 节点的异常状态等,产出的异常事件主体为集群。
  • Topic:该类型的巡检规则检查特定 Topic 的异常状态,产出的异常事件主体为 Topic。
  • ConsumerGroup:该类型的巡检规则检查特定 ConsumerGroup 的异常状态,产出的异常事件主体为 ConsumerGroup。

不同资源类型代表异常风险的范围不同,集群类型的风险往往是全局风险,而 Topic 和 ConsumerGroup 资源类型的风险一般是局部业务风险。

属性:巡检周期

巡检周期是指 RocketMQ Copilot 巡检规则定时执行的时间间隔。系统巡检在没有异常的情况下会一直按固定的巡检周期重复检查。

巡检周期根据不同的巡检规则项会有差异,一般有如下周期:

  • 1 分钟
  • 10 分钟
  • 1 小时
  • 12 小时

巡检周期属性,暂不允许用户自由修改。

属性:异常检测条件

异常检测条件是 RocketMQ Copilot 巡检规则中定义当次检查不通过产出异常事件的逻辑表达式。一般有如下类型:

  • 阈值判断类型:比如判断磁盘空间占用是否超过阈值。
  • 一致性比对类型:比如比对配置一致性、订阅关系一致性等巡检规则。

根据巡检规则的差异,部分巡检规则支持用户自定义调整检测条件中的部分阈值变量。

属性:关联异常事件

关联异常事件是指巡检规则判定异常检测条件成立时自动生成的异常事件。RocketMQ Copilot 内置事件存储系统,支持历史事件的查询和分析。关于 RocketMQ Copilot 的事件列表定义参考 AutoMQ Copilot 事件列表▸

管理巡检规则

前提条件

RocketMQ Copilot 巡检规则由系统内部自动生成,默认情况下在接入集群后即可自动运行,无需用户手动创建。

查看或者变更巡检规则,需要满足如下条件:

  1. 当前安装已经接入了至少一个集群组和一个集群,并且处于服务中状态。
  2. 当前安装关联的订阅计划处于服务中状态,没有到期。

查看巡检规则

用户可以在添加集群组和集群后自主查看当前生效的巡检规则,RocketMQ Copilot 按照资源类型分组展示系统巡检规则。具体操作流程如下:

  1. 登录RocketMQ Copilot,前往左侧菜单栏,点击巡检规则。
  2. 用户可以根据资源类型切换系统巡检规则 Tab 页面,查看各资源类型相关的巡检规则。

变更巡检规则

部分巡检规则支持用户进行变更,主要的变更操作有如下:

  • 调整异常检测条件参数:仅推荐在默认的异常检测条件不符合需求的情况下调整。
  • 调整检测周期:仅推荐在默认的异常周期不符合需求的情况下调整。
  • 临时关闭或者启用单个巡检规则:仅推荐在异常风险处理过程中临时关闭巡检,日常服务中请保持巡检开启。

当前系统巡检规则只支持集群组粒度生效,不支持针对单个集群或者 Broker 节点的自定义参数配置。

部分高危且重要的系统巡检规则不支持用户关闭。

变更巡检规则的操作流程如下:

  1. 登录RocketMQ Copilot,前往左侧菜单栏,点击巡检规则。
  2. 用户可以根据资源类型切换系统巡检规则 Tab 页面,找到目标巡检规则,修改参数后点击确认生效。

附录:巡检规则列表

RocketMQ Copilot 基于十多年 RocketMQ 运维经验沉淀了若干针对集群、Topic 和 ConsumerGroup 的巡检规则,列举如下:

关于系统巡检规则的检测逻辑、异常风险和业务处理经验请登录 RocketMQ Copilot 产品控制台实时查阅和体验。

资源类型规则名称检查周期强制开启支持自定义阈值
集群类型集群高危风险版本检查24h
集群类型集群内 Broker 版本一致性检查10min
集群类型集群内 Broker 配置一致性检查10min
集群类型Topic 自动创建开关配置项检查10min
集群类型默认 Topic 队列数配置项检查10min
集群类型ConsumerGroup 自动创建开关配置项检查10min
集群类型Consumer 数量变动通知开关配置项检查10min
集群类型消息轨迹 Topic 启用开关配置项检查10min
集群类型消息轨迹启用开关配置项检查10min
集群类型Broker读权限配置项检查10min
集群类型Broker写权限配置项检查10min
集群类型Consumer批量冷读消息量配置项检查10min
集群类型Broker强制定时进行路由注册配置项检查10min
集群类型Broker路由注册超时时间配置项检查10min
集群类型Broker定时注册周期配置项检查10min
集群类型Broker请求快速失败开关配置项检查10min
集群类型Broker消息发送任务队列最大等待时间配置项检查10min
集群类型Broker消息拉取任务排队最大等待时间配置项检查10min
集群类型客户端心跳任务排队最大等待时间配置项检查10min
集群类型消息事务提交最大等待时间配置项检查10min
集群类型SQL92 属性过滤开关配置项检查10min
集群类型ConsumeQueueExt 启用开关配置项检查10min
集群类型禁用慢消费者消费功能开关配置项检查10min
集群类型PutMessage 自旋锁启用开关配置项检查10min
集群类型Slave节点读取消息开关配置项检查10min
集群类型物理位点偏移内存占用比例阈值配置项检查10min
集群类型文件预热开关配置项检查10min
集群类型堆外内存池写入开关配置项检查10min
集群类型通信网络 IO 读写和编解码线程数配置项检查10min
集群类型使用堆内存进行消息传输开关配置项检查10min
集群类型内核参数vm.swappiness检查10min
集群类型内核参数vm.max_map_count检查10min
集群类型内核参数单个进程最大可打开的 fd 数
检查
10min
集群类型消息保存时长完整性检查10min
集群类型Broker 路由注册报文大小检查10min
集群类型Broker 消息发送线程池任务排队检查10min
集群类型Broker 消息拉取线程池任务排队检查10min
集群类型Broker 消息查询线程池任务排队检查10min
集群类型执行 PutMessage 耗时长检查即时
集群类型待刷盘数据量检查1min
集群类型Broker 版本一致性检查1h
集群类型Broker 注册数据大小检查1h
集群类型Broker 堆外内存池待提交数据量检查10min
集群类型Broker 之间入流量热点检查10min
集群类型Broker 之间出流量热点检查10min
集群类型集群内 Broker 流量热点检查1min
集群类型Broker 主备节点同步延迟检查1min
集群类型堆外内存池待提交数据量检查1min
集群类型ConsumeQueue和Commitlog一致性检查10min
集群类型NameServer路由一致性检查10min
集群类型脚本重复性启动检查10min
集群类型集群磁盘空间占用检查10min
集群类型集群磁盘 IO 水位检查1min
集群类型集群 CPU 水位检查1min
集群类型网络读写缓冲区检查1min
集群类型Pagecache 脏页检查1min
集群类型半事务消息检查1min
集群类型消息定时清理任务检查1min
集群类型消息逻辑队列分发延迟检查1min
集群类型死信消息队列消息数检查1min
集群类型消息堆积导致随机 IO 延迟检查1min
集群类型Broker注册链路RPC成功率检查1min
集群类型Broker 运行命中已知缺陷检查24h
Topic类型Topic 路由一致性检查1h
Topic类型Topic 队列数一致性检查1h
Topic类型Topic 跨集群分布检查1h
Topic类型Topic 队列和消费者均衡度检查10min
Topic类型Topic队列写入热点检查1h
Topic类型Topic 跨集群分布检查10min
Topic类型定时消息热点时间戳检查10min
Topic类型发送RT波动检查10min
Topic类型事务消息回查异常检查10min
ConsumerGroup 类型ConsumerGroup 订阅关系一致性检查10min
ConsumerGroup 类型订阅关系复杂度检查10min
ConsumerGroup 类型客户端版本不一致检查10min
ConsumerGroup 类型消费者队列负载均衡检查10min
ConsumerGroup 类型消费者提交位点回退检查即时
ConsumerGroup 类型消费者消费超时异常检查10min
ConsumerGroup 类型消费者重试超过限制次数检查10min
ConsumerGroup 类型是否出现队列未被分配的现象10min
ConsumerGroup 类型消费堆积和延迟陡增检查10min
ConsumerGroup 类型消费RT陡增检查10min
ConsumerGroup 类型消费者提交位点回退检查10min
ConsumerGroup 类型重试队列热点检查10min
Client客户端类型消费者并发度参数检查10min
Client客户端类型消费者超时时间参数检查10min
Client客户端类型消费者鉴权参数异常检查10min
Client客户端类型生产者鉴权异常检查10min