事前
-
大阪リージョンのAWS Backupに"Default"というバックアップボルトがある前提です。デフォルトであるのでだいじょぶだと思う
-
デフォルトサービスロールを作っておく。"AWSBackupDefaultServiceRole"
サンプルテンプレート
- test-vault という名前のバックアップボールトを作成します。
- test-plan という名前のバックアッププランを作成します。
- ボールト test-vault に保存するバックアップを設定します。
- test-rule という名前のバックアップルールを作成し、毎日 1 回のバックアップを実行するようスケジュールします。これらのバックアップは、作成後 2 日で削除されるように設定します。
- 災害復旧の目的でバックアップを ap-norteast-3 AWS リージョンにコピーするように CopyAction を設定します。これらのバックアップは、作成後 2 日で削除されるように設定します。
- AWSBackupDefaultServiceRole という名前の IAM ロールを使用して、バックアップジョブを実行します。
キー backup2 と値 true でタグ付けされたすべてのリソースにバックアッププランを割り当てます。
AWSTemplateFormatVersion: "2010-09-09"
Description: "Backup Plan template for thin backups"
Resources:
testvault:
Type: "AWS::Backup::BackupVault"
Properties:
BackupVaultName: "test-vault"
testplan:
Type: "AWS::Backup::BackupPlan"
Properties:
BackupPlan:
BackupPlanName: "test-plan"
AdvancedBackupSettings:
-
ResourceType: EC2
BackupOptions:
WindowsVSS: disabled
BackupPlanRule:
-
RuleName: "test-rule"
TargetBackupVault: !Ref testvault
ScheduleExpression: "cron(25 11 ? * * *)"
Lifecycle:
DeleteAfterDays: 2
CopyActions:
-
DestinationBackupVaultArn: arn:aws:backup:ap-northeast-3:xxxxxxxxxxxx:backup-vault:Default
Lifecycle:
DeleteAfterDays: 2
DependsOn: testvault
testresource:
Type: "AWS::Backup::BackupSelection"
Properties:
BackupSelection:
SelectionName: "testresource"
IamRoleArn: !Sub "arn:aws:iam::${AWS::AccountId}:role/service-role/AWSBackupDefaultServiceRole"
ListOfTags:
-
ConditionType: "STRINGEQUALS"
ConditionKey: "backup2"
ConditionValue: "true"
BackupPlanId: !Ref testplan
DependsOn: testplan
バックアッププラン
バックアップルール
参考
https://aws.amazon.com/jp/premiumsupport/knowledge-center/aws-backup-cloudformation-template/
基本はこの通りやればできます。公式
AWS Backupの薄い教科書
https://qiita.com/pioho07/items/68ccbc7b974b1466e7a6