外观
OceanBase 监控告警规范
监控告警体系
监控体系架构
- 数据采集层:负责采集 OceanBase 集群的各种监控指标
- 数据存储层:存储采集到的监控数据
- 数据处理层:对监控数据进行处理、分析和聚合
- 告警引擎层:根据预设规则生成告警
- 告警通知层:将告警通知给相关人员
- 可视化展示层:提供监控数据的可视化展示
告警体系架构
- 告警规则管理:管理告警规则的创建、修改和删除
- 告警触发引擎:根据监控数据和告警规则触发告警
- 告警级别管理:管理告警的级别划分和处理策略
- 告警通知管理:管理告警的通知方式和接收人
- 告警处理流程:定义告警的处理流程和升级机制
监控指标规范
核心监控指标
集群级指标
- 集群状态:集群整体健康状态
- 分区副本状态:分区副本的分布和状态
- 事务成功率:事务提交成功率
- QPS/TPS:每秒查询数和每秒事务数
节点级指标
- CPU 使用率:节点 CPU 使用率
- 内存使用率:节点内存使用率
- 磁盘使用率:节点磁盘使用率
- 磁盘 I/O:节点磁盘 I/O 使用率
- 网络带宽:节点网络带宽使用率
租户级指标
- 租户 CPU 使用率:租户使用的 CPU 资源百分比
- 租户内存使用率:租户使用的内存资源百分比
- 租户 I/O 使用率:租户使用的 I/O 资源百分比
- 租户 QPS/TPS:租户的每秒查询数和每秒事务数
会话级指标
- 活跃会话数:当前活跃的会话数量
- 会话等待事件:会话等待的事件类型和数量
- 慢查询数:慢查询的数量和比例
告警级别规范
告警级别划分
| 级别 | 名称 | 含义 | 处理时限 |
|---|---|---|---|
| P0 | 紧急告警 | 导致业务完全中断,需要立即处理 | 5分钟内响应,30分钟内解决 |
| P1 | 严重告警 | 导致业务部分中断或性能严重下降 | 15分钟内响应,1小时内解决 |
| P2 | 重要告警 | 可能导致业务中断或性能下降,需要及时处理 | 30分钟内响应,2小时内解决 |
| P3 | 警告告警 | 系统出现异常,但暂时不影响业务 | 2小时内响应,24小时内解决 |
| P4 | 信息告警 | 系统状态变化,需要关注 | 4小时内响应,72小时内解决 |
告警级别判定规则
P0 紧急告警
- 集群不可用,所有业务中断
- 租户不可用,核心业务中断
- 数据丢失或损坏
- 节点故障导致副本数不足
P1 严重告警
- 集群性能严重下降,响应时间超过阈值5倍
- 节点 CPU 使用率持续超过95%
- 磁盘使用率持续超过95%
- 事务成功率低于90%
P2 重要告警
- 节点 CPU 使用率持续超过85%
- 磁盘使用率持续超过90%
- 内存使用率持续超过90%
- 慢查询数量突增5倍以上
P3 警告告警
- 节点 CPU 使用率持续超过75%
- 磁盘使用率持续超过85%
- 内存使用率持续超过85%
- 副本同步延迟超过阈值
P4 信息告警
- 节点状态变化
- 配置参数变更
- 备份完成通知
- 日志切换通知
告警阈值规范
CPU 使用率告警阈值
| 指标 | 告警级别 | 阈值 | 持续时间 |
|---|---|---|---|
| 节点 CPU 使用率 | P0 | >98% | 5分钟 |
| 节点 CPU 使用率 | P1 | >95% | 10分钟 |
| 节点 CPU 使用率 | P2 | >85% | 15分钟 |
| 节点 CPU 使用率 | P3 | >75% | 30分钟 |
| 租户 CPU 使用率 | P1 | >95% | 10分钟 |
| 租户 CPU 使用率 | P2 | >85% | 15分钟 |
内存使用率告警阈值
| 指标 | 告警级别 | 阈值 | 持续时间 |
|---|---|---|---|
| 节点内存使用率 | P0 | >98% | 5分钟 |
| 节点内存使用率 | P1 | >95% | 10分钟 |
| 节点内存使用率 | P2 | >90% | 15分钟 |
| 节点内存使用率 | P3 | >85% | 30分钟 |
| 租户内存使用率 | P1 | >95% | 10分钟 |
| 租户内存使用率 | P2 | >90% | 15分钟 |
磁盘使用率告警阈值
| 指标 | 告警级别 | 阈值 | 持续时间 |
|---|---|---|---|
| 节点磁盘使用率 | P0 | >98% | 5分钟 |
| 节点磁盘使用率 | P1 | >95% | 10分钟 |
| 节点磁盘使用率 | P2 | >90% | 15分钟 |
| 节点磁盘使用率 | P3 | >85% | 30分钟 |
| 日志磁盘使用率 | P0 | >98% | 5分钟 |
| 日志磁盘使用率 | P1 | >95% | 10分钟 |
性能指标告警阈值
| 指标 | 告警级别 | 阈值 | 持续时间 |
|---|---|---|---|
| 事务成功率 | P0 | <90% | 5分钟 |
| 事务成功率 | P1 | <95% | 10分钟 |
| 事务成功率 | P2 | <98% | 15分钟 |
| 慢查询比例 | P1 | >10% | 10分钟 |
| 慢查询比例 | P2 | >5% | 15分钟 |
| 副本同步延迟 | P1 | >60秒 | 5分钟 |
| 副本同步延迟 | P2 | >30秒 | 10分钟 |
告警通知规范
通知方式
- 短信通知:适用于 P0、P1 级别的紧急告警
- 电话通知:适用于 P0 级别的严重告警
- 邮件通知:适用于所有级别的告警,作为详细信息的补充
- 即时通讯工具:适用于 P0、P1、P2 级别的告警
- 监控平台:所有告警都应在监控平台上展示
通知接收人
- P0 告警:核心运维团队、架构师、技术负责人
- P1 告警:运维团队、相关开发团队
- P2 告警:运维团队
- P3 告警:值班运维人员
- P4 告警:运维团队(可选)
通知内容
- 告警基本信息:告警级别、告警时间、告警ID
- 告警详情:告警指标、当前值、阈值、持续时间
- 影响范围:受影响的集群、节点、租户、业务
- 建议操作:针对该告警的建议处理步骤
- 联系方式:相关负责人的联系方式
告警处理流程规范
告警处理流程
- 告警接收:相关人员接收告警通知
- 告警确认:确认告警的真实性和影响范围
- 初步诊断:根据告警信息进行初步诊断
- 问题定位:深入分析,定位问题根因
- 问题修复:实施修复方案
- 验证恢复:验证问题是否已解决
- 告警关闭:关闭已解决的告警
- 总结分析:记录告警处理过程,分析根因,提出改进措施
告警升级机制
P0 告警:
- 5分钟内无响应,升级到团队负责人
- 15分钟内未解决,升级到部门负责人
- 30分钟内未解决,升级到公司技术负责人
P1 告警:
- 15分钟内无响应,升级到团队负责人
- 1小时内未解决,升级到部门负责人
- 2小时内未解决,升级到公司技术负责人
P2 告警:
- 30分钟内无响应,升级到团队负责人
- 2小时内未解决,升级到部门负责人
告警处理规范
- 及时响应:按照告警级别规定的时限及时响应
- 准确记录:详细记录告警处理过程和结果
- 彻底解决:不仅解决表面问题,还要解决根本原因
- 举一反三:分析类似问题,采取预防措施
- 持续改进:定期回顾告警处理情况,优化告警规则和处理流程
告警管理规范
告警规则管理
- 规则创建:根据监控指标和业务需求创建告警规则
- 规则测试:新创建的告警规则必须经过测试验证
- 规则评审:重要告警规则的变更必须经过评审
- 规则优化:定期优化告警规则,减少误报和漏报
告警统计分析
- 告警数量统计:统计不同级别、不同类型的告警数量
- 告警处理时长统计:统计告警从产生到解决的时长
- 告警误报率统计:统计误报告警的比例
- 告警漏报率统计:统计漏报告警的比例
- 告警趋势分析:分析告警的变化趋势
告警优化机制
- 误报优化:分析误报原因,优化告警规则
- 漏报优化:分析漏报原因,补充告警规则
- 告警风暴优化:优化告警规则,避免告警风暴
- 告警噪音优化:合并相似告警,减少告警噪音
常见问题(FAQ)
Q1: 如何避免告警风暴?
A1: 避免告警风暴的方法:
- 合理设置告警规则,避免过于敏感
- 实施告警抑制,同一问题只产生一个告警
- 实施告警聚合,将相似告警合并为一个
- 实施告警静默,在维护窗口内暂时关闭告警
Q2: 如何降低告警误报率?
A2: 降低告警误报率的方法:
- 基于历史数据设置合理的告警阈值
- 考虑告警的持续时间,避免瞬时峰值导致误报
- 结合多个指标进行告警判断,提高告警准确性
- 定期回顾和优化告警规则
Q3: 如何确保告警能够及时通知到相关人员?
A3: 确保告警及时通知的方法:
- 配置多种通知方式,避免单一通知方式失效
- 建立完善的告警升级机制
- 定期测试告警通知系统
- 确保通知接收人的联系方式正确且及时更新
Q4: 如何处理频繁出现的同类告警?
A4: 处理频繁同类告警的方法:
- 分析告警的根本原因,彻底解决问题
- 优化系统配置,提高系统的稳定性和性能
- 调整告警规则,减少不必要的告警
- 考虑是否需要调整系统架构或扩容资源
Q5: 如何建立有效的告警处理流程?
A5: 建立有效告警处理流程的方法:
- 明确告警的处理责任人和处理时限
- 定义清晰的告警处理步骤和升级机制
- 建立告警处理的记录和回顾机制
- 定期培训相关人员,提高告警处理能力
- 持续优化告警处理流程
