aws backupをec2(Amazon Linux2)AWS CLIコマンドで実行する
1. バックアップボールトの作成
aws コンソールでバックアップボールトを作成する。kmsキーの設定もお忘れなく
2. 実行ロールの作成
実行に必要なロールを作成します。
https://docs.aws.amazon.com/ja_jp/aws-backup/latest/devguide/iam-service-roles.html
上記URLに記載があるように、次のポリシー2つをアタッチしたロールを作成
・AWSBackupServiceRolePolicyForBackup
・AWSBackupServiceRolePolicyForRestores
3. AWS CLIコマンドの作成
実行するコマンドスクリプトを作成します。
aws backup start-backup-job --backup-vault-name バックアップボールド名 \
--resource-arn arn:aws:ec2:ap-northeast-1:123456789012:instance/インスタンスid
\
--iam-role-arn arn:aws:iam::123456789012:role/作成したロール名 \
--region ap-northeast-1
作成したスクリプトを実行させます。今回は,単独のEC2をバックアップします。
IsParent 複合ジョブ
This is a boolean value indicating this is a parent (composite) backup job.
$./aws_backup
{
"BackupJobId": "9905344f-40b9-4a35-941e-40bae97adf99",
"CreationDate": "2024-01-12T13:44:12.548000+09:00",
"IsParent": false
}
バックアップボールドの設定や,権限の設定が間違っている場合は,実行すると,以下のようなメッセージが出ます。
$./aws_backup
An error occurred (AccessDeniedException) when calling the StartBackupJob operation: Insufficient privileges to perform this action.
正常に実行したジョブの状態を出力します。
$aws backup describe-backup-job --backup-job-id 9905344f-40b9-4a35-941e-40bae97adf99
{
"AccountId": "123456789012",
"BackupJobId": "9905344f-40b9-4a35-941e-40bae97adf99",
"BackupVaultName": "backp_xxxx",
"BackupVaultArn": "arn:aws:backup:ap-northeast-1:123456789012:backup-vault:backp_xxxx",
"RecoveryPointArn": "arn:aws:ec2:ap-northeast-1::image/ami-xxxxxxxxxxxxxxxxx",
"ResourceArn": "arn:aws:ec2:ap-northeast-1:123456789012:instance/i-xxxxxxxxxxxxxxxxx",
"CreationDate": "2024-01-12T13:44:12.548000+09:00",
"CompletionDate": "2024-01-12T13:48:18.497000+09:00",
"State": "COMPLETED",
"PercentDone": "100.0",
"BackupSizeInBytes": 32212254720,
"IamRoleArn": "arn:aws:iam::123456789012:role/backup-xxxx-role",
"ResourceType": "EC2",
"BytesTransferred": 0,
"StartBy": "2024-01-12T21:44:12.548000+09:00",
"IsParent": false,
"ResourceName": "Ama_linux2_xxxxxx",
"InitiationDate": "2024-01-12T13:44:12.835000+09:00",
"MessageCategory": "SUCCESS"
}
4. awsコンソールでバックアップの確認
awsコンソールで実行したジョブを確認します。
aws backupコンソール画面のジョブをクリックします。
5. awsコンソールでバックアップボールトの確認