導入
RTO/RPOの目標値が決まったら、それを満たす最も安い戦略を選びます。AWSのDR戦略は大きく4段階に分かれており、段階が上がるほど復旧は速くなりますが、その分コストも跳ね上がります。
説明
代表的な4つのDR戦略を、待機系の「温め具合」が低い順に並べます。
| 戦略 | 概要 | RTO | RPO | コスト |
|---|---|---|---|---|
| バックアップ&リストア | バックアップだけ取得し、災害時に一から環境を作る | 数時間〜1日 | 数時間 | 最も低い |
| パイロットライト | コア(DBなど)だけ最小構成で常時稼働、他は停止 | 数十分 | 数分 | 低〜中 |
| ウォームスタンバイ | 縮小版のフルスタックを常時稼働、災害時にスケールアップ | 数分 | 秒〜数分 | 中〜高 |
| マルチサイト(アクティブ-アクティブ) | 複数リージョンで本番同等の構成を常時稼働 | ほぼゼロ | ほぼゼロ | 最も高い |
flowchart LR
S1["バックアップ&リストア<br/>RTO:大 コスト:小"] --> S2["パイロットライト"] --> S3["ウォームスタンバイ"] --> S4["マルチサイト<br/>RTO:小 コスト:大"]
それぞれの実装イメージは次の通りです。
- バックアップ&リストア: AWS BackupやS3にバックアップを保存するだけ。復旧時にCloudFormation等でインフラを作り直す。
- パイロットライト: DRリージョンにDB(例: Auroraのリードレプリカ)だけ稼働させ、APサーバーはAMIやテンプレートを用意して停止しておく。災害時に起動する。
- ウォームスタンバイ: DRリージョンに最小台数のAPサーバー・DBを常時稼働。災害時はAuto Scalingでフル規模へ拡張し、Route 53でトラフィックを向ける。
- マルチサイト(アクティブ-アクティブ): 両リージョンが常時本番トラフィックを受け、片方が落ちてももう片方がそのまま引き受ける。Aurora Global DatabaseやDynamoDB Global Tablesが前提になることが多い。
読んでみよう
SAPの問題では「予算は限られているが、コアデータだけは早く戻したい」ならパイロットライト、「数分のダウンタイムも許容できない、かつ予算は問題にしない」ならマルチサイト、というように要件文の緩さ・厳しさで4段階のどこに落ちるかを判定させます。「最もコスト効率よく、かつRTO◯分を満たす」という問題は、4段階のうちRTOを満たす最も安い戦略を選ぶのが定石です。