在 AWS 台湾机房 部署后,备援架构应以高可用、故障隔离、和可恢复性为核心,优先采用多可用区(AZ)和跨可用区复制。
1. 主备部署:主实例在台湾机房的多AZ内做群組部署,備援則考慮跨區或冷備份;
2. 数据复制:对关系型数据库启用主从同步或多AZ写入;对对象存储使用跨区复制(CRR);
3. 网络与负载:配置弹性负载均衡(ELB)与健康检查,並使用 Route 53 做 DNS 健康路由。
成本與延遲需权衡,若业務要求最低延迟,可优先在台湾多AZ内部署;若要抗区域性灾害,需设计跨区域备援。
跨区域容灾以热备(Active-Active)或冷备(Cold-Standby)为主,依据业务重要性与成本做分层。
1. 选择跨区目标:例如选东南亚或亚太其他区域作为 DR(灾备)站点;
2. 数据同步:採用异步复制、快照与跨区复制策略,确保数据副本可用;
3. 流量切换:使用 Route 53 的地理或延迟路由,配合健康检查自動切换。
跨区会带来网络延迟與费用,需模拟数据一致性问题,并保证安全合规(如数据主权要求)。
依据业务优先级分类,為不同服务设定明确的 RTO(恢复时间目標) 与 RPO(恢复点目標),並制定对应的切换流程。
1. 分类分级:将服务分为关键、重要、一般三级,分别设定 RTO/RPO;
2. 多级切换:先尝试自动化热切换;若失败,触发手动跨区灾难切换;
3. 验证流程:每次演练后记录实际恢复时间与数据丢失,调整目标与流程。
关键交易系统:RTO<1小时、RPO<5分钟;一般后台服務:RTO数小时、RPO数小时或当天快照。
採用 IaC(如 CloudFormation、Terraform)與 CI/CD 自動化脚本,將備援环境與演练流程程式化,使恢復可重現且可測試。
1. IaC 编排:把网络、EC2、RDS、S3、IAM 等資源納入模板;
2. 自动化演练:使用脚本化的故障注入(如停掉主节点)触发切换,並通过 CI 记录结果;
3. 監控與告警:整合 CloudWatch、X-Ray、SNS,自動回報演练指标與异常。
自動化演练应在隔离环境或低峰时段执行,并确保演练脚本幂等、安全,避免影响生产数据。
容灾演练应分层、定期与场景化,结合 桌面演练、半真實演练 与 全面切换演练,并建立演练回顾机制。
1. 周期:关键系统至少每季度做一次半真實演练,年中或年度做一次全面跨区演练;
2. 场景:模拟网络断连、区域故障、数据库主从延迟、全站流量切换等多种场景;
3. 评估:每次演练后记录 RTO/RPO 達成情况、流程缺陷與责任人改进项。
通过演练累积文档、自动化脚本与运行手册,將 备援策略 常态化纳入运维与开发生命周期。