Featured image of post Sre

Sre

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部署
  • 自动故障转移

持续演练 & 可靠性测试

  • 混沌工程(提前演练故障)
  • 增加缺失监控点
  • …..
Licensed under CC BY-NC-SA 4.0

Powered by Hugo | Theme by Stack
Deployed with GitHub Actions 🚀
使用 Hugo 构建
主题 StackJimmy 设计