AWS SAA(Solutions Architect - Associate)対策

バックアップ設計

このレッスンでできるようになること。保持期間や監査の要件文から、AWS Backup とサービス個別のスナップショットのどちらで組むかを決め、世代管理と保護の設定まで選べるようになります。

要件の文から入る

ある会社が、EC2 のインスタンスストア以外のボリューム、RDS、EFS、DynamoDB を使っています。監査部門から「すべてのバックアップを7年間保持し、取得状況を一元的に報告できること。運用担当者を増やさずに実現すること」と指示が出ました。何を選びますか。

注目する語は「すべての」「一元的に報告」「運用担当者を増やさずに」です。各サービスの自動バックアップ機能を個別に設定していく案も技術的には成立しますが、サービスごとに設定画面と保持ルールが分かれるため、横断の報告と運用が人手に寄ります。この形が出たら AWS Backup のバックアップポリシーが答えです。複数サービスのバックアップを1つのプランで束ね、保持ルールとレポートをまとめて扱うためのサービスだからです。

AWS Backup とサービス個別バックアップの線引き

どちらでも取得はできます。試験で問われるのは、その先の運用要件です。

観点AWS Backupサービス個別の自動バックアップ・スナップショット
対象EBS、RDS、EFS、DynamoDB、FSx などを横断そのサービスだけ
保持ルールバックアッププランで一元管理。ライフサイクルでコールドストレージへ移行できるサービスごとに設定
適用の仕方タグをキーにしてリソースを自動で対象化できるリソースごとに個別設定
監査への報告準拠状況をまとめて確認できる各サービスの画面を集計する必要がある
組織全体への強制Organizations のバックアップポリシーで全アカウントへ適用できるアカウント単位の運用に依存

判断の軸は次の一文です。対象が1サービスに閉じていて、そのサービス固有の機能が要るなら個別。複数サービスにまたがるか、監査や組織横断の要件が付いたら AWS Backup。

世代管理と保持ポリシー

保持の設計で押さえる論点は3つです。

1つめは保持期間そのものです。バックアッププランのライフサイクルで、一定期間が過ぎたらコールドストレージへ移し、さらに保持期間を過ぎたら削除する、という流れを定義します。長期保持は暖かい階層に置き続けるより冷たい階層へ移した方が安く済むので、7年保持のような要件では移行を組み込むのが定石です。

2つめは複製先です。「リージョン障害に備える」「本番アカウントが侵害されてもバックアップは残す」と書かれていたら、バックアップのコピー先を別リージョンや別アカウントに指定します。同じアカウントの同じリージョンにだけ置いたバックアップは、その障害や事故の巻き添えになります。

3つめは改変防止です。「保持期間中は誰も削除できないこと」「ランサムウェア対策として上書きを防ぐこと」と書かれたら、AWS Backup のボールトロックのように、いったん設定すると保持期間中の削除を止められる仕組みを選びます。S3 に置いた成果物であれば Object Lock が同じ役割を果たします。IAM ポリシーで削除権限を外す案は惜しいのですが、権限を持つ管理者がいる限り理屈の上では消せてしまうため、改変防止の要件語に対しては弱い答えになります。

RDS の自動バックアップとスナップショットの違い

ここも定番です。自動バックアップは設定した保持期間の範囲で、指定した時点への復元ができます。手動スナップショットは明示的に削除するまで残ります。要件文に「任意の時点に戻したい」とあれば自動バックアップの保持期間の話、「特定の時点の状態を長期に保管したい」とあれば手動スナップショットの話です。なお DB インスタンスを削除すると自動バックアップは消えるため、長期保管の要件があるなら手動スナップショットか AWS Backup に寄せます。

要件語から構成への対応表

要件文の言い回し選ぶもの
複数サービスのバックアップを一元管理・一元報告AWS Backup のバックアッププラン
全アカウントに同じバックアップ要件を強制Organizations のバックアップポリシー
新しく作られたリソースも自動で対象にしたいタグベースのリソース割り当て
リージョン障害でもバックアップを失わない別リージョンへのコピーを設定
本番アカウントが侵害されても復旧できる別アカウントのボールトへコピー
保持期間中は誰も削除できないボールトロック、または S3 の Object Lock
長期保持のコストを下げたいライフサイクルでコールドストレージへ移行
任意の時点に戻したいRDS の自動バックアップの保持期間を延ばす
特定時点の状態を長期に残したい手動スナップショット

よくある引っ掛け

1つめは、削除防止を IAM の権限設計だけで答えてしまうものです。「保持期間中は削除を許さない」という監査要件には、権限の付け外しではなく、設定そのものが削除を拒む仕組みを当てます。

2つめは、バックアップを同一リージョン内に置いたまま「リージョン障害に備える」と書かれた問題に答えてしまうものです。コピー先の指定まで見て選択肢を切ります。

まとめ

  • 複数サービス横断、監査報告、組織全体への強制は AWS Backup の担当です
  • 保持設計はライフサイクル、コピー先、改変防止の3点で組みます
  • 長期保持はコールドストレージへの移行を組み込むと安くなります
  • 「削除できないこと」はボールトロックや Object Lock で満たします。権限設計だけでは弱いです
  • RDS は、時点復元なら自動バックアップ、長期保管なら手動スナップショットです
生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア
編集 LuaGate編集部

復習ミニクイズ

ある企業が EBS、RDS、DynamoDB のバックアップをサービスごとに手作業で設定しています。監査部門から「すべての対象を7年間保持し、保持期間中はいかなる操作でも削除できないこと。取得状況は横断して報告できること。運用担当者は増やさないこと」と指示されました。最も適切な構成はどれですか。