0Pricing
AWS Solutions Architect · 课时

RTO、RPO 与 DR 层级

定义恢复时间目标和恢复点目标,将其映射到成本层级,并了解每种 DR 策略支持的 SLA 承诺

RTO、RPO 与 DR 层级 是 CoddyKit 上的免费 AWS Solutions Architect 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 AWS Solutions Architect 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 AWS Solutions Architect 课程共包含 4 节课。

理解 RTO 和 RPO

Recovery Time Objective(RTO)是从灾难发生到系统恢复运行之间可接受的最长时间。如果您的 RTO 是 4 小时,业务可以承受 4 小时的停机。Recovery Point Objective(RPO)是按时间衡量的最大可接受数据丢失量——如果 RPO 是 1 小时,您必须能够恢复到不早于灾难发生前 1 小时的状态。这两个指标由业务 requirements 决定,而不是由技术偏好决定。

# RTO and RPO definitions:
# RTO = max time system can be DOWN
#   Example: RTO=4h means restore within 4 hours
#
# RPO = max data LOSS acceptable
#   Example: RPO=1h means no more than 1 hour of data lost
#
# Lower RTO and RPO = more expensive DR strategy
# Higher RTO and RPO = cheaper but more business impact

四种 DR 层级

AWS 定义了四种主要的 Disaster Recovery 策略,排序从最低成本 / 最高 RTO 到最高成本 / 最低 RTO:1)Backup and Restore——成本最低,RTO 为数小时;2)Pilot Light——始终运行最小核心组件,RTO 为数分钟到数小时;3)Warm Standby——规模缩小但功能完整,RTO 为数分钟;4)Multi-Site Active-Active——成本最高,RTO 接近于零。具体选择取决于业务停机成本与 DR 基础设施成本之间的权衡。

# DR Strategy comparison:
# Strategy          | RTO      | RPO      | Cost
# Backup & Restore  | Hours    | Hours    | Lowest
# Pilot Light       | Minutes+ | Minutes  | Low
# Warm Standby      | Minutes  | Seconds  | Medium
# Active-Active     | ~0       | ~0       | Highest

Backup and Restore 策略

采用Backup and Restore时,您会定期创建数据快照,并将其存储在其他位置(例如使用跨 region 复制的 S3)。发生灾难时,您从最新的备份中恢复。这是成本最低的策略,因为无需运行 Standby 基础设施。其代价是 RTO 最长(从快照恢复大型数据库需要数小时),RPO 最高(上次备份之后产生的数据都会丢失)。AWS Backup 可自动为 EC2、RDS、EFS、DynamoDB 等服务执行快照 Schedule。

# Create AWS Backup plan for RDS
aws backup create-backup-plan \
  --backup-plan '{
    "BackupPlanName": "daily-backup",
    "Rules": [{
      "RuleName": "daily",
      "TargetBackupVaultName": "dr-vault",
      "ScheduleExpression": "cron(0 5 ? * * *)",
      "StartWindowMinutes": 60,
      "CompletionWindowMinutes": 180,
      "Lifecycle": {
        "DeleteAfterDays": 35
      },
      "CopyActions": [{
        "DestinationBackupVaultArn": "arn:aws:backup:us-west-2:123:backup-vault:dr-vault"
      }]
    }]
  }'

Pilot Light 策略

Pilot Light策略会在 DR region 中以最低容量运行系统的核心组件,就像能够迅速点燃完整火焰的引火灯。通常,这意味着持续将数据库复制到 DR region,并维护基本的网络基础设施(VPC、子网、安全组)。应用服务器不会运行,但可以根据预构建的 AMI 或启动模板快速启动。RTO 通常为 30 分钟到数小时,具体取决于所需的手动工作量。

# Pilot Light: what runs in DR region at all times
# - RDS Read Replica (continuously replicated)
# - Core VPC/networking infrastructure
# - Route 53 DNS (inactive until failover)

# What is NOT running (launched during failover):
# - EC2 application servers
# - ELB (or dormant)

# Failover steps:
# 1. Promote RDS Read Replica to standalone
# 2. Scale up EC2 instances from launch template
# 3. Update Route 53 to point to DR region

Warm Standby 策略

Warm Standby策略会在 DR region 中运行生产环境的一个功能完整但规模缩小的副本。与 Pilot Light 不同,应用层处于运行状态(可能只有 1-2 个实例,而不是 20 个),数据库则使用 Aurora Global Database secondary 或 RDS Read Replica。发生 failover 时,您可以扩展 DR 环境,使其容量与生产环境匹配。RTO 通常低于 15 分钟。这是中高关键性工作负载最常用的 DR 策略。

# Warm Standby: DR region runs scaled-down version
# Production:  10 EC2 instances (ASG min=10, max=50)
# DR Standby:  2 EC2 instances  (ASG min=2,  max=50)

# During failover:
# 1. Route 53 health check fails for primary
# 2. DNS switches to DR ALB
# 3. ASG in DR scales up from 2 to 10+
# 4. Promote Aurora Global DB secondary
# Total failover time: ~5-15 minutes

Multi-Site Active-Active 策略

Multi-Site Active-Active会同时在两个或更多 region 中运行完整的生产容量。所有 region 都提供实时流量服务,数据以近实时方式(或采用 multi-master)复制。不存在 failover 延迟——当某个 region 发生 Failure 时,Route 53 或 Global Accelerator 会立即将所有流量路由到其余健康 region。该策略可提供最低的 RTO 和 RPO,但成本也最高,因为您始终要为所有 region 中的完整生产容量付费。

# Active-Active: full capacity in both regions
# us-east-1:  ASG 10 instances (serving ~50% traffic)
# eu-west-1:  ASG 10 instances (serving ~50% traffic)

# Route 53 weighted routing:
# us-east-1: weight=50
# eu-west-1: weight=50
# Both records have health checks

# On us-east-1 failure:
# Health check fails -> Route 53 removes us-east-1
# eu-west-1 receives 100% traffic
# ASG in eu-west-1 scales up automatically

RPO 与数据复制技术

您的 RPO 直接决定所需的复制技术。RPO = 0需要同步复制——不会丢失任何数据。RPO 为 Seconds需要 Aurora Global Database 这类近实时异步复制(延迟 <1s)。RPO 为 Minutes允许采用存在少量延迟的异步复制(DynamoDB Streams、RDS Read Replicas)。RPO 为 Hours可以通过定期快照实现(AWS Backup 每小时 Schedule)。在选择技术之前,请明确确定业务的 RPO 要求。

# RPO requirements mapped to replication technology:
# RPO = 0:        RDS Multi-AZ (synchronous)
# RPO < 1 second: Aurora Global Database
# RPO < 1 minute: DynamoDB Global Tables
# RPO < 15 min:   RDS Read Replica
# RPO < 1 hour:   AWS Backup hourly schedule
# RPO < 24 hours: AWS Backup daily schedule

无服务器架构的 DR

无服务器架构(Lambda、DynamoDB、API Gateway)天生更具韧性,但仍需要进行 DR 规划。DynamoDB Global Tables可为数据库层提供 active-active multi-region 能力。Lambda可以通过同一个 CI/CD pipeline 部署到第二个 region。API Gateway应在 DR region 中预置。主要风险是 region 之间出现配置漂移——请使用AWS CDK 或 Terraform,从同一代码库将相同的基础设施部署到两个 region。

# Deploy Lambda to multiple regions with CDK
# cdk.json environment configuration:
{
  'primary': {
    'account': '123456789',
    'region': 'us-east-1'
  },
  'dr': {
    'account': '123456789',
    'region': 'us-west-2'
  }
}

# Deploy to both:
# cdk deploy --context env=primary
# cdk deploy --context env=dr

RTO 与成本权衡示例

假设某公司的 Annual revenue 为 1,000 万美元。如果停机成本为每分钟 1,000 美元,那么一次 8 小时的中断(RTO=8h)会造成 480,000 美元的损失。采用 RTO=15 分钟的 active-passive Warm Standby,可将每次事故的潜在损失降至 15,000 美元。如果 Standby 每月成本为 5,000 美元(每年 60,000 美元),那么只有在每年发生超过一次重大中断时,这种方案才具有经济意义。这种成本合理性分析正是 SAA-C03 考试要求您在选择 DR 策略时进行的分析。

# DR cost justification formula:
# Annual cost of DR infrastructure
# vs
# Expected annual outage cost
#   = P(outage) x downtime_duration x cost_per_minute
#
# Example:
# P(annual outage) = 0.1 (10% chance per year)
# downtime = 8 hours = 480 minutes
# cost = $1000/min
# Expected loss = 0.1 x 480 x $1000 = $48,000/year
#
# If warm standby costs $30,000/year -> worth it

DR 测试与文档

从未经过测试的 DR 计划只是一份文档。AWS 强烈建议定期进行DR 演练:练习 failover 流程,测量实际 RTO 和 RPO,并找出差距。请使用AWS Fault Injection Simulator(FIS)以受控方式模拟 region 降级。请为 failover 步骤编写运行手册,这样在真实事故的压力下,值班团队可以遵循清晰且经过测试的流程,而不是临时应对。

# DR drill checklist:
# 1. Notify stakeholders (planned drill)
# 2. Initiate failover (Route 53 health check override)
# 3. Measure time from trigger to traffic in DR region (RTO)
# 4. Measure data consistency between regions (RPO)
# 5. Test all critical application functions in DR
# 6. Failback to primary region
# 7. Document actual RTO/RPO vs target
# 8. Update runbooks with lessons learned

合规性与 DR 要求

许多行业都有关于 DR 的监管要求。PCI DSS要求制定有文档记录的 DR 计划并进行测试。HIPAA要求制定数据备份和灾难恢复流程。SOC 2会评估包括 DR 在内的可用性控制。请使用AWS Config和AWS Audit Manager持续评估并记录您的 DR 资源(备份、Replica、Health 检查)是否配置正确。这样无需手动收集,即可为合规审计提供证据。

# AWS Config rule to check RDS backup retention
aws configservice put-config-rule \
  --config-rule '{
    "ConfigRuleName": "rds-backup-enabled",
    "Source": {
      "Owner": "AWS",
      "SourceIdentifier": "DB_INSTANCE_BACKUP_ENABLED"
    },
    "InputParameters": "{\"backupRetentionMinimum\":\"7\"}"
  }'

快速检查

测试您对本课 AWS Solutions Architect (SAA-C03) 概念的理解。

课程回顾

在本课中,您学习了:RTO 是可接受的最大停机时间,RPO 是可接受的最大数据丢失量,四个 DR 层级在成本与恢复速度之间进行权衡,以及您的 RPO 要求决定应使用哪种复制技术。请始终测试您的 DR 计划,以验证实际的 RTO 和 RPO。接下来,我们将详细探讨 Backup and Restore 策略。

常见问题解答

「RTO、RPO 与 DR 层级」课时是免费的吗?

是的 — 「RTO、RPO 与 DR 层级」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 AWS Solutions Architect 课程的其余内容,请升级到 CoddyKit PRO。 AWS Solutions Architect 课程共包含 4 节课。

「RTO、RPO 与 DR 层级」这节课中我会学到什么?

定义恢复时间目标和恢复点目标,将其映射到成本层级,并了解每种 DR 策略支持的 SLA 承诺 你通过在浏览器中直接运行的动手代码来练习 AWS Solutions Architect,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 AWS Solutions Architect 需要有经验吗?

无需任何先前经验。CoddyKit 上的 AWS Solutions Architect 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。

「RTO、RPO 与 DR 层级」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 AWS Solutions Architect 课中编写并运行代码吗?

能。每节 AWS Solutions Architect 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. RTO、RPO 与 DR 层级
  2. 备份与还原
  3. 试点灯与温备
  4. 使用全局表与 Route 53 实现多站点主动-主动
← 返回 AWS Solutions Architect