1.概述
为保证平台稳定性监控系统为相对重要的一环,结合稳定全局考虑,监控预警在平台稳定性建设中承担如下职责,在事前做好告警预案及发现潜在问题,事中快速定位问题,事后优化监控预警策略。
1.1 概述
alarm负责监控数据收集,prometheus负责监控数据存储,grafana负责监控数据展示;现有监控体系告警管理配置难度较高主要存在如下问题:
- 告警规则配置缺少扩展性
- 缺乏较为灵活的告警预案
- 无告警历史回溯功能
- 缺少告警抑制功能
- 面向开发人员缺少易用性
- 不具备同比环比功能
针对上述问题进行告警平台化实施,结合现有监控体系进行告警平台化建设,形成监控预警闭环。
1.2. 系统变更
1.3 监控处理流程

1.4 功能概述
监控主要功能包含采集,探测,告警,恢复,能力外放
| 功能模块 | 子模块 | 版本 | 状态 | 备注 | 
|---|---|---|---|---|
| 业务探测 | akka探测 | V1 | ||
| http探测 | V1 | |||
| cmp探测 | V1 | |||
| 指标收集 | 耗时 | V1 | ||
| 并发 | V1 | |||
| 错误率 | V2 | |||
| 饱和度 | V2 | |||
| 运行状态 | V1 | |||
| 基础组件 | V1 | |||
| 告警管理 | 告警规则 | V1 | ||
| 告警预案 | V1 | |||
| 屏蔽规则 | V1 | |||
| 活跃告警 | V1 | |||
| 历史告警 | V1 | |||
| 告警展示 | 节点监控 | V1 | ||
| 服务监控 | V1 | |||
| 集群监控 | V1 | |||
| 主业务监控 | V1 | |||
| 告警处理 | 通知 | V1 | ||
| 电话通知 | V1 | |||
| 告警控制 | V2 | |||
| 链路追踪 | skywalking | V2 | ||
| 开放API | 告警屏蔽 | V2 | ||
| 待讨论 | ||||
| 告警查询 | V2 | |||
| 待讨论 | ||||
| 监控架构优化 | 业务探测 | V2 | ||
| 指标采集 | V2 | |||
| 告警处理 | V2 | |||
| 高可用 | n9e | v1 | ||
| 高可用 | ||||
| promethus | v2 | |||
| 高可用 | ||||
| 模块对接 | 服务 | V1 | ||
| 中间件 | V2 | |||
| 基建 | V2 | |||
| 基于zabbix | 
- 版本- 功能概述:- 完善现有告警,形成体系化告警平台
- 实现告警管理,告警历史,告警屏蔽,告警预案等基础支持
- 提升平台扩展性,支持多业务接入
 
 
- 功能概述:
1.5 对接内容
| 对接项 | 子项 | 版本 | 描述 | 版本 | 
|---|---|---|---|---|
| promethus | promethus | V1 | k8s-prome.server.net | |
| 告警通知 | im | V1 | 告警通知 | |
| 业务组件 | 日志 | V1 | 阈值告警 | |
| jvm | V1 | |||
| mysql | V1 | |||
| redis | V1 | |||
| API | V1 | |||
| 用户 | V1 | |||
| 中间件 | mysql | V2 | ||
| redis | V2 | |||
| hbase | V2 | |||
| kafka | V2 | |||
| es | V2 | |||
| 基建 | 磁盘 | V2 | ||
| CPU | V2 | |||
| 内存 | V2 | |||
| 网络 | V2 | |||
2.指标收集
2.1 业务指标采集
2.1.1 技术实现
2.2 中间件
2.2.1 技术实现
2.3 基建指标采集
2.3.1 技术实现
2.4 其他指标采集
2.4.1 技术实现
- 其他业务采集- 对外提供标准的promethus接口
- 如es之类可以做采用扩展中间层实现(grafana虽然有实现,告警整体相对单一)
 
3.业务探测
3.1 业务探测
3.1.1 技术实现
- 指标采用alarm.check实现
3.2 网络探测
3.2.1 技术实现
- 采用blockbox实现类似实现 - 4.告警管理- 4.1 技术实现
- 考虑告警模式的灵活性采用n9e实现 
- 任务项 
- 告警分层 - 业务层
- 组件层
- 中间层
- 基建层
 
- 多数据中心管理 - 多数据中心进行集中管理
- 多数据中心进行集中配置
 
4.3 告警使用
4.3.1 基础操作
告警配置可参考夜莺使用手册
4.3.2 开放API
 restful接口暴露出来
