https://docs.aws.amazon.com/ja_jp/aws-backup/latest/devguide/getting-started.html
https://dev.classmethod.jp/articles/aws-backup-ec2-instances/
You cannot delete two backup vaults: the AWS Backup default backup vault and the Amazon EFS automatic backup vault.
スポットインスタンスはバックアップできない
-- 1. コマンド等のインストール
-- 1.1 aws cli version 2 インストール
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
aws --version
-- 1.2 jqインストール
sudo yum -y install jq
-- 2. テスト用EC2インスタンス作成
aws ec2 run-instances \
--image-id ami-0404778e217f54308 \
--instance-type t3.nano \
--key-name key1 \
--tag-specifications 'ResourceType=instance,Tags=[{Key=Name,Value=instance01}]'
aws ec2 describe-instances
-- 3. バックアッププランを作成する
aws backup list-backup-vaults
aws backup describe-backup-vault \
--backup-vault-name Default
aws backup create-backup-plan \
--backup-plan '{
"BackupPlanName": "plan01",
"Rules": [
{
"RuleName": "rule01",
"TargetBackupVaultName": "Default",
"ScheduleExpression": "cron(0 4 ? * * *)",
"StartWindowMinutes": 60,
"CompletionWindowMinutes": 120,
"Lifecycle": {
"DeleteAfterDays": 1
},
"RecoveryPointTags": {},
"CopyActions": ,
"EnableContinuousBackup": false
}
]
}'
aws backup list-backup-plans
aws backup get-backup-plan \
--backup-plan-id 11111111-2222-3333-4444-555555555555
-- 4. バックアッププラン対象リソースを作成する
aws backup create-backup-selection \
--backup-plan-id 11111111-2222-3333-4444-555555555555 \
--backup-selection '{
"SelectionName": "selection01",
"IamRoleArn": "arn:aws:iam::999999999999:role/service-role/AWSBackupDefaultServiceRole",
"Resources": [
"arn:aws:ec2:ap-northeast-1:999999999999:instance/i-11111111111111111"
],
"ListOfTags": ,
"NotResources": ,
"Conditions": {
"StringEquals": ,
"StringNotEquals": ,
"StringLike": ,
"StringNotLike": []
}
}'
aws backup list-backup-selections \
--backup-plan-id 11111111-2222-3333-4444-555555555555
aws backup get-backup-selection \
--backup-plan-id 11111111-2222-3333-4444-555555555555 \
--selection-id 66666666-7777-8888-9999-aaaaaaaaaaaa
-- 5. 動作確認
バックアップが動作するまで待つ
aws backup list-backup-jobs
aws backup describe-backup-job \
--backup-job-id bbbbbbbb-cccc-dddd-eeee-ffffffffffff
aws backup list-protected-resources
aws backup describe-protected-resource \
--resource-arn arn:aws:ec2:ap-northeast-1:999999999999:instance/i-11111111111111111
-- 6. クリーンアップ
-- 復旧ポイントの削除
aws backup list-recovery-points-by-backup-vault \
--backup-vault-name Default
aws backup describe-recovery-point \
--backup-vault-name Default \
--recovery-point-arn arn:aws:ec2:ap-northeast-1::image/ami-ggggggggggggggggg
aws backup delete-recovery-point \
--backup-vault-name Default \
--recovery-point-arn arn:aws:ec2:ap-northeast-1::image/ami-ggggggggggggggggg
※AMIも削除されていることを確認する
-- バックアッププラン対象リソースの削除
aws backup list-backup-selections \
--backup-plan-id 11111111-2222-3333-4444-555555555555
aws backup get-backup-selection \
--backup-plan-id 11111111-2222-3333-4444-555555555555 \
--selection-id 66666666-7777-8888-9999-aaaaaaaaaaaa
aws backup delete-backup-selection \
--backup-plan-id 11111111-2222-3333-4444-555555555555 \
--selection-id 66666666-7777-8888-9999-aaaaaaaaaaaa
-- バックアッププランの削除
aws backup list-backup-plans
aws backup delete-backup-plan \
--backup-plan-id 11111111-2222-3333-4444-555555555555
-- EC2インスタンスの削除
aws ec2 describe-instances
aws ec2 terminate-instances --instance-ids i-11111111111111111