1. SLA、SLO、SLI
SLI:服务水平指示器(正常响应数的百分比)
SLO:服务水平目标(99%、99.999%、99.99999%) 必须和时间挂钩
SLA:服务水平协议(SLO的具体实现)
SLA 是对客户的外部承诺,SLO 是公司内部为实现承诺设定的目标,SLI 则是用来衡量实际服务表现的指标。
2.MTTR
MTTR:平均故障修复时间(Mean Time to Repair)
MTTR = 故障修复总时长 ÷ 故障次数
如何降低 MTTR?
监控
- 完善监控告警体系
- 业务指标监控
- 系统指标监控
- 告警降噪
- 告警分级:p1、p2、p3
- 告警升级:当某告警等级为 P2,且在 1 小时内未被处理(未关闭、未屏蔽等),将自动升级为p 1
- 告警间隔:同一条告警默认重复发送最小间隔时间为15m
- 告警淹没:设置合适的告警策略,避免告警太多,告警漏报
快速定位
- 标准化排障 SOP
- CPU、内存飙高怎么查
- ELB 5xx 怎么查
- Pod CrashLoop 怎么查
- 自动抓取现场信息
- C++ core dump
- 统一日志平台
- ELK / Loki
- 全链路追踪
快速修复问题
- 灰度发布 / 金丝雀发布
- 配置中心(apollo) + 动态切流(像开关一样关闭某个模块)
- 自动扩容(根据业务流量自动扩容,HPA)
- 脚本化修复
- 一键重启
- 一键清理DNS缓存
- ….
高可用部署
- 高可用
- 多AZ部署
- 自动故障转移
持续演练 & 可靠性测试
- 混沌工程(提前演练故障)
- 增加缺失监控点
- …..
