摘要:告警功能是各大云平台必不可少的模块,个性化的告警配置,为帮助用户和运维人员及时发现问题发挥着重要作用。
本文分享自华为云社区《GaussDB(DWS) 数据库智能监控系统告警框架上线啦!》,作者:codefulture。
本文将从一下几个方面介绍DMS告警框架:
- 数据库智能监控系统告警框架的来源
- 告警框架的实现
- 告警框架的不足和期望
一、数据库智能监控系统告警框架的简介
告警功能是各大云平台必不可少的模块,包括阿里云、腾讯云,乃至华为云本身都提供了十分丰富的告警功能。个性化的告警配置,为帮助用户和运维人员及时发现问题发挥着重要作用。
数据库智能监控系统(简称DMS)告警框架(以下简称告警框架)用于监控数据仓库的集群信息,且基于8.1.1以上版本的集群进行开发,如果您的集群版本低于8.1.1或没有安装DMS,则不能适用次告警功能。
告警功能是结合产品自身需求、业务需求、客户需求独立进行设计与开发,为了能够让用户更快速的熟悉和使用次功能,告警功能在设计之处也参照了其他平台的使用方式、相关概念,并结合自身情况进行调整,完成了初版的设计与开发。
二、告警框架的实现与使用
1. 告警框架的实现
在说具体实现之前,先了解下告警框架中涉及的相关概念。
- 告警指标:告警指标是实际监控的内容,如:CPU使用率、磁盘使用率、IO等。
- 告警策略:告警策略是触发告警的最小单元,每一条策略针对一种告警指标。告警策略分为阈值策略、状态策略等。
- 告警规则:告警规则是实际监测(任务调度)的最小单元,是告警策略的集合。告警规则包含自默认规则和自定义规则。
- 默认告警规则:默认规则是系统提供的基础告警项,用户只需根据业务简单的配置,即可收到告警信息。
- 义告警规则:当默认告警规则不能满足实际需求时,用户可根据自己的实际需求创建自定义告警规则。
- 规则、告警策略、告警指标三者关系:一个告警规则(默认/自定义)可包含多个告警策略,并且规则中的策略存在不同关系,当前已知策略关系如下:
- 相互独立(或):策略之间并无实际联系,只要一个策略满足条件则发送告警;
- 优先级:一般指同一规则下,所有策略监控的指标项相同,但触发的阈值不同,按照阈值递减顺序判断是否发送告警;
- 与:所有策略都满足条件则发送告警。
了解了以上概念,再来说下告警框架的组成,告警框架主要分为三大部分,监控指标采集、告警策略定制、告警任务调度。
1-1. 监控指标采集
监控数据库,必须要对数据库各指标数据进行采集,通过合理的统计查询,获得实时或周期性的数据库和集群的状态,结合告警策略触发告警。
1-2. 告警策略定制
下图所示是告警策略的组成,通过各配置项的不同组合,达成多样化的配置,后续版本的迭代中,会加入更多的可配置项,以支持更多的业务场景。
1-3. 告警任务调度
监控指标是周而复始的过程,需要一个稳定的调度器支撑告警框架的任务调度,目前采用的是分布式调度框架Quartz。下图所示是调度任务的执行逻辑。
2. 告警框架的使用
DMS告警框架位于【数据仓库服务】中的【告警管理】菜单中。
首页提供了告警统计功能,包含了一周内发生的告警,用户可查看统计数字和告警详细信息。
点击【查看告警规则】查看告警规则列表。
告警框架提供了自定义告警规则和默认告警规则,默认告警规则未系统内置,用户可根绝自身需求添加自定义告警。
点击【创建规则】或【修改】按钮进入配置页面。
目前可修改的内容只有“绑定集群”、“阈值”、“持续周期”、“抑制条件”、“告警级别”,其他选项,将在后续的版本中放开为用户提供更丰富的配置选择。
2-1. 各修改项说明
- 修改绑定集群可以设置次告警规则适用的集群范围,默认为全部,可多选;
- 修改阈值可以调整触发告警的上限或下限,每种指标默认提供了阈值范围,可按照页面提示和实际情况进行合理修改。
- 修改持续周期,可以拉长或缩短指标数据的查询范围,检测的是长周期的指标变化趋势,还是某时刻的指标异常变化。
- 修改抑制条件可以控制告警的发送频率,处于抑制期的告警不会重复发送。
告警框架的不足与期望
DMS告警框架还在建设当中,存在诸多不足,譬如:还需提供更多的监控指标,支持多种策略配置方式,告警项的拓展不够便捷等。
除了解决上述的痛点,更多的希望告警框架能够和系统的功能模块联动起来,让监控系统更“智能”。
想了解GuassDB(DWS)更多信息,欢迎微信搜索“GaussDB DWS”关注微信公众号,和您分享最新最全的PB级数仓黑科技,后台还可获取众多学习资料哦~