AWS - Disaster Recovery 架構策略
簡介
在軟體架構中我們會假定軟體各個流程可能失敗的地方,當然在龐大的系統中可能可以服務多個使用者與提供功能,但如果今天資料中心因一些不可抗力因素導致服務停擺,這將會對企業有非常巨大的損失,因此災難復原(DR)成為應對這些情況的重要手段,本文是閱讀 Seth Eliot 於 20210514 發表的 AWS 預備災難復原介紹的內容的整理筆記,主要在於協助讀者去衡量災難復原架構時在降低 RTO(Recovery Time Objective) 與 RPO(Recovery Point Objective) 與 控制成本 之間的權衡。
策略
文章中有提到有四種架構
- Backup & Restore (單純備份)
- Pilot Light(多區域備份且建立但不執行資源)
- Warn Standy(多區域備份且建立與執行最小化可運行資源)
- Multi-site active/active(多區域執行完整資源)
Pilot Light 策略
在備援區域維持最基本得核心資料基底,但不啟動全部主。需要 額外動作(如啟動 Instance、部署完整架構) 才能真正恢復出服務
資料與架構準備
- 資料透過 RDS/DynamoDB 等異地複製與備份避免因資料損壞而連帶複製問題
- 備援區域會建立 VPC 基礎架構,包括子網、路由,負載平衡器與 Auto Scaling Group,帶仍然需要近一部署與擴展
RTO/RPO 與成本
- RPO 與 Warn Standby 類似,但 RTO 較長,因為需要啟動與擴展
- 成本較低,適合容忍一些延遲啟動情境。
Warn Standby 策略
在備援區域保持一個縮減版但可運行的系統,可立即處理少量流量,再訊速擴展以應付正式負載
資料與架構準備
- 與 Pilot Light 類似,資料需同步複製與備份,基礎架構也已運行在備援區內。
RTO/RPO 與成本
- RPO 可低至秒級,RTO 僅數分鐘,因為系統已在運行只需擴容
- 成本較 Pilot Light 高,但比起 Multi-Site Active/Active 更具性價比
Pilot Light with Reserved Capactiy 由 AWS 提出的進階 Piot Light
AWS 提出一種介於 Pilot Light 與 Warn Standby 之間的策略 Pilot with Reserced Capacity
特色
在備援區域 **預留計算資料(On-Demand Capacity Reservations)**,但不實際運行,當故障發生後才啟動這些資源。
優勢
- 保留較低成本(資源預留但不運行)
- 若結合 Saving Plans 可再節省多達 72% 且可與 development/test 帳戶共享該預留容量
限制
- 適合容許 RTO 在數小時內的工作負載,不適合要求極快恢復的情境
Reference
- Disaster Recovery (DR) Architecture on AWS, Part III: Pilot Light and Warm Standby