RocketMQ Copilot 1.0.0 经过一段时间的开发迭代,终于和大家见面了!1.0.0 相比较于之前提供了更多新特性,同时也在之前版本的基础上做了不少功能增强,是 RocketMQ Copilot 的第一个 GA 版本。在新版本中,RocketMQ Copilot 提供了全景概览,容量规划等新特性,并针对 SLO,风险和容量规划提供了多渠道告警功能。对自助诊断也进行了功能强化。同时也修复了上个版本中的若干问题,为用户带来更好的体验。欢迎大家点击 RocketMQ Copilot Playground进行快速体验!
使用以下命令一键安装 RocketMQ Copilot:
bash -c "$(curl -sSL https://download.automq.com/automq-copilot-for-rocketmq/start.sh)"
01 基于历史数据的自助诊断
在之前的版本中,RocketMQ Copilot 基于常见的消息未消费,消息堆积和一些通用问题提供了自助诊断模板。不过这些模版中诊断项的绝大部分都是基于即时数据来进行诊断的,然而很多用户等到在自助诊断页面提交问题时,现场往往是得不到保留的。问题发生时刻的历史数据如果没有持久化,对于查询当时问题发生的根因也是不利的。在 1.0.0 版本中,RocketMQ Copilot 会定时地对录入的集群保存与诊断项有关的数据。譬如:对于路由不一致这个问题来说,RocketMQ Copilot 会将集群中的 Topic 针对每一个 Nameserver 节点的路由信息都定时保存下来。用户在提交问题诊断模板之后,会自动将用户提交模板中的问题发生时间范围与定时保存结果中的时间点进行匹配,如果在指定时间段出现了异常数据结果则会提示用户该检查项不通过。
分析消费者堆积历史数据不通过
如上图所示,RocketMQ Copilot 对于局部消费者堆积这个检查项,会定时保存检查结果。当用户提交的时间段命中异常记录时,则会显示该检查项不通过。基于历史数据的自助诊断功能保留了用户的问题现场,能为用户问题的排查带来更多指导意义。
02 全景概览
RocketMQ Copilot 1.0.0 中对录入的集群新增了全景概览功能,为 RocketMQ 运维人员提供一个全局的可视化数据大盘。全景概览可以多维度满足不同应用场景下用户的需要。
快速梳理巡检数据,感知集群风险
首先对于之前版本中就已经有的风险和 SLO 功能,在概览页也做出了集群级别的集中展示并支持一键跳转。其次对集群中的基础元信息数目也做出了集中展示。
风险和 SLO 概览
为重大业务规划和决策提供业务特征数据
RocketMQ Copilot 中集中梳理了当前集群的流量特征,比如像不同消息类型的分布,消息大小的分布等等。
提供集群内部流量特征
在大规模 RocketMQ 集群中,顺序消息和事务消息很多时候是单独运维的,分析出当前集群中不同类型消息的数目可以为之后的运维提供强有力的指导。消息大小的分布也是很重要的指标,在同样的收发 TPS 下,更大的消息会给集群造成更大的压力。提交明确的消息大小分布图可以为集群规划提供有效建议。为紧急问题的排查缩小范围除此之外,全景概览页也对一些重要的业务指标进行了倒排展示。方便用户快速找到有问题的 Broker,Topic 和 ConsumerGroup 等资源。
全景概览页部分图例
03 多维度容量规划
在与 RocketMQ 众多的自建用户进行交流之后,我们发现对集群进行容量规划始终是一个很困难的话题。随着业务的发展,RocketMQ 集群往往先在 CPU、内存、磁盘和网络带宽这些系统指标中表现出瓶颈,具体再反映到 RocketMQ 业务上,这些系统指标上的瓶颈往往由消息的收发 TPS,对存储空间的磁盘性能的占用决定。
RocketMQ Copilot 1.0.0 版本中,允许用户针对生产 TPS,消费 TPS,存储空间和磁盘 IOUtil 创建容量规划项,用户需要对每个容量规划项设置上限和预警水位。
支持对每个容量规划项设置上线和预警水位
容量规划模块会存储每个规划项的历史数据,并针对这些历史数据进行实时预测。在设置告警的情况下,容量规划模块会针对实时预测的数据,提前 7 天进行预警,提醒用户进行扩容处理。一些特殊情况下,用户需要进行临时业务规划,这部分业务指标是很难预测的。容量规划模块也提供手动增加规划的方式帮助用户调整预测曲线。
支持新增临时大促
04 全渠道告警
RocketMQ Copilot 此次还提供了对企业微信/钉钉/飞书等常用办公 IM 渠道的告警功能,并支持用户使用自定义 HTTP 参数添加 Webhook 地址。
支持创建多渠道 Webhook 触达客户对 SLO 不达标,出现新风险和容量预测超过预警水位的情况,会通过配置好的报警渠道通知到客户。
新风险出现微信渠道通知卡片
AutoMQ 团队凝聚了十年的生产运维经验,打造出了 RocketMQ Copilot 这样一款产品。无侵入,轻量化的输出方式,让用户以最简单的方式监测 RocketMQ 集群,快速发现生产问题,并针对问题提供了一系列最佳实践。欢迎大家点击 RocketMQ Copilot Playground来体验并使用这款匠心之作,同时期待大家为RocketMQ Copilot 建言献策。我们也会扎根社区,不断吸收来自开发者的需求和建议,一起建设更好的 RocketMQ。同时,也诚邀各位开源爱好者持续关注我们社区,点亮小星星?,跟我们一起构建云原生消息中间件!
END
关于我们
AutoMQ 是一家专业的消息队列和流存储软件服务供应商。AutoMQ 开源的 AutoMQ Kafka 和 AutoMQ RocketMQ 基于云对 Apache Kafka、Apache RocketMQ 消息引擎进行重新设计与实现,在充分利用云上的竞价实例、对象存储等服务的基础上,兑现了云设施的规模化红利,带来了下一代更稳定、高效的消息引擎。此外,AutoMQ 推出的 RocketMQ Copilot 专家系统也重新定义了 RocketMQ 消息运维的新范式,赋能消息运维人员更好的管理消息集群。
? GitHub 地址:https://github.com/AutoMQ/automq-for-kafka
? 官网:https://www.automq.com
? B站:AutoMQ官方账号
? 视频号:AutoMQ
? 扫二维码加入我们的社区群
关注我们,一起学习更多云原生干货