みなさん、こんばんは。サニービュー事業部の小寺です。
今日はAWS Organizationsと連携してAWS Backupを使い、バックアップの一括管理を行う方法についてお伝えします!

AWS Backupとは

AWS Backup はフルマネージドなバックアップサービスであり、現在使用しているAWSサービスのバックアップの一元化や自動化をしてくれます。
自動バックアップスケジュールと保持管理をポリシーを使って行うことができます。
特徴としては、AWS KMS 統合してバックアップの暗号化、AWS Backup Audit Manager によるデータ保護監査とコンプライアンスレポートが提供される、AWS Backup Vault Lock によるライトワンスリードメニー (WORM)等があり、今日はその中でもAWS Organizationsでのマルチアカウント管理機能をピックアップしてみます。

2023年2月時点でサポートされている、AWS Backupと連携したサービスについては以下の通りです。
・Amazon Simple Storage Service (S3)
・Amazon Elastic Block Store (EBS)
・Amazon FSx
・Amazon Elastic File System (EFS)
・AWS Storage Gateway
・Amazon Elastic Compute Cloud (EC2)
・Amazon Relational Database Service (RDS)
・Amazon Aurora
・Amazon DynamoDB
・Amazon Neptune
・Amazon DocumentDB (MongoDB 互換)
・Amazon Timestream
・Amazon Redshift
・SAP HANA on Amazon EC2
・AWS CloudFormation で定義されたアプリケーションスタック全体
また、オンプレミスおよび VMware CloudTM on AWS や AWS Outposts で稼働するVMware ワークロードなどのハイブリッドアプリケーションにも対応しています。

Organizationsの管理アカウントでの設定

(1) OrganizationsのサービスからAWS Backupを信頼されたアクセスが「無効」から「有効」に変更します。

(2)次にOrganizationsのポリシーからバックアップポリシーを「無効」から「有効」に変更します。

(3)AWS Backupの設定から「バックアップポリシー」と「クロスアカウントモニタリング」を「オン」に変更します。

(4))AWS Backup「自分の組織」-「バックアップポリシー」を選択し「バックアップポリシーを作成」をクリックします。

(5)ポリシー名を入力します。

(6)バックアッププランを設定の「バックアッププランの詳細」でバックアッププラン名を入力します。バックアッププランのリージョンはここでは、東京リージョンとします。

(7)プロジェクトやシステムの要件に応じてバックアップルールを設定します。
注意事項として、バックアップボールトはバックアップを取得するOrganizationsのメンバーアカウントで先に作成しておく必要があります。
メンバーアカウントで作成したバックアップボールト名を入力します。

(8)バックアップ対象とするリソースを設定します。
今回はタグをキーとしてバックアップを取得します。タグ名「DailyBackup」で値が「on」のリソースを対象にします。その他はデフォルトで「ポリシーを作成」を選択します。
IAMロールについては、「service-role/AWSBackupDefaultServiceRole」を入力します。「ポリシーを作成」をクリックします。

(9)バックアップポリシー「backup-policy」が正常に作成されました。

(10)「ターゲット」から「アタッチ」を選び、バックアップを取得対象とするOUをアタッチします。組織内のOUもしくは組織内のメンバーアカウントを個別に指定してアタッチすることも可能です。
今回は1アカウントだけを選択し、「アタッチ」をクリックします。

Organizationsのメンバーアカウントでの設定

(1)メンバーアカウントでAWSアカウントにログインし、AWS Backupのバックアッププランを確認すると先ほど設定したバックアッププランを確認することができます。

(2)「AWS Organizations ポリシーから作成されたバックアッププランを削除または編集することはできません。」とのメッセージが表示され、Organizationsの管理アカウントから作成したプラン変更ができないようになっています。

(3)検証用として、タグに「DailyBackup」を「On」として設定しておきます。

バックアップ取得の動作確認

メンバーアカウント側で、バックアップジョブが完了となっています。

Organizationsの管理アカウント側では「クロスモニタリング」に全て取得したバックアップの情報を確認することができます。

まとめ

AWS Organizationsでのマルチアカウント管理機能を試してみました。Organizations配下のメンバーアカウントのバックアップ取得結果を一元管理したいときに、ぜひおすすめの機能です。まずは、開発、本番、ステージングなどの環境やプロジェクトのバックアップ要件によって、ポリシーを作成してアタッチして集中管理することで運用管理の負荷を下げることができるのではないでしょうか。