异地多活

两地三中心

为什么要建设多个 IDC(数据中心)

灾备。

为什么是两地三中心(同城+跨城)

最大可能性地避免天灾人祸。
但距离过远、数据传输速度慢,同时会带来数据一致性问题。

这体现了 CAP 原理:一致性(C)与高可用(A)不可兼得。

部署方式

全量灾备例子:新浪的弹性伸缩服务(back up、单元化)
部分灾备例子:支付宝早期架构

研发

业务分级

  1. SLA、SLO、SLI
  2. 为什么要做业务分级
    便于做灾备。

SRE(现已归入 devops 体系)

  1. 监控体系
    IDC
    网络
    基础服务
    应用服务
    流量
    安全
    用户(agent、听云、白山云)
  2. 灾备
  3. fire-help
    发现(完备的监控系统、混沌工程)、恢复(回滚)、解决、复盘

数据
实时性(有些业务一定要实时,有些不需要)

怎么做

  1. 调研方案
  2. 可行性分析
  3. 形成多种方案
    • 进行技术选型
    • 成本分析(人力、金钱)
    • 风险分析
    • 形成一套方案
  4. 决策

成本预算

确定资源

  1. 金钱待遇
  2. 业务
  3. 职级(向谁汇报)

立项

  1. 计算规划
  2. 分配资源
  3. 时间节点(中期汇报、日报)
  4. 风险点

启动

  1. 安排任务
  2. 通过按计划完成任务来提升自我的影响力

验收

  1. 干系方的验收
    包括让 QA、产品经理验收。
  2. 非干系方的验收
    比如让媒体报道,提升我们公司的影响力。
  3. 形成闭环
    review 计划,看是否达到了预期。