使用 AWS Elastic Disaster Recovery 构建灾难恢复 - 持续复制与恢复测试

通过持续复制将本地服务器复制到 AWS,通过恢复演练验证流程。介绍从故障转移到故障回退的完整流程。

Elastic Disaster Recovery 概述

Elastic Disaster Recovery(DRS)是将本地或其他云的服务器持续复制到 AWS,在灾难时快速恢复的服务。在源服务器安装 AWS Replication Agent 后,块级变更通过 TCP 1500 端口持续复制到 AWS 的暂存区域。初次同步执行全磁盘传输,之后仅传输变更块,在最小化网络带宽消耗的同时将 RPO 维持在秒级。代理支持 Windows Server 2012 R2 及以上版本和主要 Linux 发行版(Amazon Linux、RHEL、CentOS、Ubuntu、SUSE、Debian)。暂存区域使用低成本的 EBS 卷(gp3 或 st1),以无压缩方式保存源磁盘数据。

恢复演练与故障转移

恢复演练是从复制数据启动 EC2 实例并验证应用运行的测试。可在不影响生产复制的情况下执行,获取 RTO 实测值。演练可以从时间点快照恢复特定时刻的状态,在数据损坏时指定损坏前的时间点启动实例。DRS 保留数天的快照,因此也适用于勒索软件恢复场景。故障转移与演练相同流程启动 EC2 实例,切换 DNS 将生产流量导向 AWS。Recovery Plan 功能可从 DRS 控制台批量故障转移多台服务器,定义启动顺序和等待时间,按正确顺序恢复具有依赖关系的服务器组。故障回退是将数据从 AWS 恢复到原本地环境的操作,在源站点启动专用的 Failback Client,DRS 管理反向复制流程。

网络设计与恢复自动化

DRS 的复制服务器放置在暂存子网中,接收源服务器的数据。恢复时启动的实例放置在另一个子网(恢复子网),预先定义生产环境的网络配置。通过启动模板设置实例类型、安全组、子网和 IAM 角色,最小化恢复时的手动操作。启动后操作可自动执行实例启动后的 DNS 切换和应用配置脚本。暂存子网不需要出站互联网访问,可通过 VPN 或 Direct Connect 的私有连接完成全部复制。还可以在恢复实例上保留源服务器的私有 IP,继承依赖 IP 地址的应用配置。

DRS 费用与限制注意事项

DRS 费用由复制服务器的 EC2 实例和 EBS 卷构成。复制服务器使用 t3.small 等小型实例运行,每台服务器的月费相对较低。恢复演练或故障转移时启动的实例仅按运行时间计费。EBS 快照存储费用按数据量产生。需要注意的限制包括每个 AWS 账户的源服务器数量有上限,大规模环境可能需要申请服务配额提升。复制带宽限制为每台服务器最大 10 Gbps,对于写入量极大的数据库服务器需要估算初次同步完成时间。跨区域复制还会产生区域间数据传输费用,大容量服务器应提前计算月度成本。

与其他 DR 方式的比较

AWS 除 DRS 外还有多种实现 DR 的方法。AWS Backup 提供基于快照的定期备份,最短 RPO 约为 1 小时,但配置简单且成本较低。CloudEndure Disaster Recovery 是 DRS 的前身服务,建议迁移到 DRS。Pilot Light 方式是保持最小配置基础设施常时运行并在灾难时扩展的方法,与 RDSRoute 53 故障转移配合使用。Warm Standby 是以缩小版保持接近生产的配置常时运行的方法,RTO 较短但成本高于 DRS。DRS 的优势在于通过持续复制实现秒级 RPO,同时不需要常时运行的全尺寸备用环境。如果仅需数据库层 DR(如 RDS 多区域只读副本加 Route 53 故障转移),则可以比 DRS 更简单地实现。

设计最佳实践与常见陷阱

采用 DRS 时,应每月定期执行恢复演练以验证恢复流程和应用功能。将启动后操作依赖的脚本纳入版本管理,每次变更后通过演练验证。常见陷阱是源服务器 OS 补丁导致代理停止。应构建 CloudWatch 告警在复制延迟超过阈值时检测。此外,当源服务器加入 Active Directory 域时,需提前确认 DNS 设置和与域控制器的连通性,确保恢复实例能重新加入域。使用 Recovery Plan 时应记录服务器间依赖关系(DB → App → Web 启动顺序),正确定义启动组和等待时间。执行故障回退前应先确认源站点网络恢复,验证 Failback Client 能连接到 AWS 暂存服务器后再开始。

总结

Elastic Disaster Recovery 通过持续复制将 RPO 缩短到秒级,实现数分钟内恢复的灾难恢复服务。启动模板和 Recovery Plan 预定义恢复实例设置和启动顺序,启动后操作自动化 DNS 切换。定期恢复演练验证 RTO/RPO 目标达成,时间点恢复可用于勒索软件防护。与备份方式相比 RPO 大幅缩短,与常时运行备用环境相比成本显著降低,是一种平衡性优秀的 DR 解决方案。