Amazon S3 のバックアップ

2023年11月20日

はじめに

S3 バケットのバックアップをとる。

バージョニングの有効化

バケットのバージョニングを有効にする必要がある。

  • S3 のバケットの [プロパティ] でバケットのバージョニングを有効にする。
  • バケットの [管理] でライフサイクルルールを作る (非現行バージョンの削除設定など)。

AWS Backup

  • [バックアッププランを作成]。名前をつける。
  • たぶん [テンプレートで開始する] が楽。テンプレートを選んで、バックアップルールを編集すればよい。
  • バックアップルールでバックアップボールトを指定する。
  • [プランを作成]。
  • リソースの割り当て (これはあとからでもできる)。名前をつける。
  • IMA ロールはとりあえずデフォルトロールにする (あとで失敗する)。
  • リソースの選択で、[特定のリソースタイプを含める] を選び、S3 のバケットを指定する。

バックアップは [保護されたリソース] に入るらしい。[保護されたリソース] の [オンデマンドバックアップを作成] で試しにバックアップを作成できる。

やってみると失敗した。

"S3 resource type is not opted in. Opt in to the resource type using update region settings."

設定の "サービスのオプトイン" で S3 を有効にする。

再度実行。次のエラー。

IAM Role arn:aws:iam::xxxxxxxxxxxx:role/service-role/AWSBackupDefaultServiceRole does not have sufficient permissions to execute the backup.

デフォルトバックアップロール: AWSBackupDefaultServiceRole

  • AWSBackupServiceRolePolicyForBackup
  • AWSBackupServiceRolePolicyForRestores

S3 は別途ポリシーが必要。以下を追加。

  • AWSBackupServiceRolePolicyForS3Backup
  • AWSBackupServiceRolePolicyForS3Restore

再度実行。AWSBackupDefaultServiceRole はデフォルトバックアップロールの名前なので、デフォルトバックアップロールを選ぶ。

参考