AWS Disaster Recovery

本文缩写(英文全称与中文含义)
缩写 英文全称/名称 中文含义
ALB Application Load Balancer 应用负载均衡器
API Application Programming Interface 应用程序编程接口
AWS Amazon Web Services 亚马逊云服务
AZ Availability Zone 可用区
ECS Elastic Container Service AWS 容器编排服务
EKS Elastic Kubernetes Service AWS 托管 Kubernetes 服务
S3 Simple Storage Service AWS 对象存储服务
SQS Simple Queue Service AWS 消息队列服务

1. 灾备目标#

灾备(Disaster Recovery,DR)是在严重故障后恢复业务和数据的能力。恢复完成应以用户能够完成关键业务为准,而不是资源状态变成 Available。

指标 含义 示例
RTO:Recovery Time Objective 从业务中断到恢复约定服务能力的时间目标 14:00 中断,RTO 30 分钟,目标在 14:30 前恢复
RPO:Recovery Point Objective 最多允许丢失的数据时间窗口 14:00 故障,RPO 5 分钟,至少恢复至 13:55 的数据

实际 RTO 包括发现、决策、隔离、数据提升、应用恢复、切流和验证。复制延迟是评估 RPO 的输入,不代表整个业务已经达到同样的 RPO。

2. 高可用、复制与备份#

能力 主要处理的问题 边界
单 Region 多 AZ 高可用 实例或 AZ 故障 不覆盖整个 Region 失效
跨 Region 灾备 Region 不可用、区域网络故障 需要恢复应用、数据、身份和外部依赖
数据复制 缩小数据落后窗口、缩短切换时间 误删、错误写入也可能被复制
隔离备份与时间点恢复 误删、数据污染、勒索软件 恢复通常慢于提升在线副本

生产方案应同时具备运行中的区域容灾和独立的备份恢复路径。

3. 策略选择#

以下是相对比较,实际恢复时间由数据量、容量准备和演练结果决定。AWS 灾备策略

策略 灾备区常态 恢复动作 成本 / 恢复速度
Backup and Restore 保存备份和部署定义 重建环境、恢复数据 成本低,恢复较慢
Pilot Light 关键数据层运行,应用未完整运行 启动应用并扩容 成本中低,恢复较快
Warm Standby 完整应用以较小规模运行 数据角色切换、扩容、切流 成本中高,恢复更快
Multi-site Active/Active 多地同时承载生产业务 隔离故障区域并转移负载 成本及数据一致性复杂度高

先确定业务目标,再选择策略。不要因为单个数据库支持多 Region,就把整套应用视为双活。

4. 标准灾备流程#

  1. 业务分级:明确关键旅程、数据权威来源、RTO/RPO、允许降级项。
  2. 建设准备:部署灾备区、配置复制和隔离备份、预置权限及容量。
  3. 持续验证:检查复制水位、备份可恢复性、镜像、密钥、依赖和备用区健康。
  4. 事故决策:确认影响、选定故障切换或备份恢复路径,指定事故负责人。
  5. 隔离旧主:阻止旧区域写入和外部副作用,确认单一写入权。
  6. 恢复业务:提升数据层,恢复应用与消息链路,验证后切换入口。
  7. 补偿与对账:恢复遗漏任务,处理重复事件和跨系统数据差异。
  8. 回切与复盘:先恢复反向保护,再执行计划切换,更新演练数据。

5. 企业级实战#

企业订单平台:双 Region 灾备全过程 覆盖 Aurora PostgreSQL、DynamoDB、Valkey、SQS、ECS、EKS、ALB、Route 53、S3、Lambda、API Gateway、EventBridge,以及身份、密钥、镜像、备份、监控和回切。

已有服务文档:

迁移文档用于补充服务操作细节;计划停机迁移的前提不等于区域突发故障时的前提。

搜索文档

输入关键词,搜索所有文档。

↑ ↓ 选择 · Enter 打开 · Esc 关闭