バックアッププランの作成 - AWS Backup

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

バックアッププランの作成

コンソール、API AWS Backup 、CLI、SDK、または AWS CloudFormation テンプレートを使用してバックアッププランを作成できます。

AWS Backup コンソールを使用したバックアッププランの作成

https://console.aws.amazon.com/backup で AWS Backup コンソールを開きます。ダッシュボードから、[バックアッププランを管理] を選択します。または、ナビゲーションペインを使用して、[バックアッププラン] を選択してから、[バックアッププランの作成] を選択します。

開始オプション

新しいバックアッププランの開始には 3 つの選択肢があります。

この手順では、新しいプランを作成します。設定の各項目には、ページ内の拡張セクションへのリンクがあり、該当セクションに移動して詳細を確認できます。

  1. にプラン名を入力しますバックアッププラン名。作成後にプランの名前を変更することはできません。

    既存のプランと同じバックアッププランを作成しようとすると、AlreadyExistsExceptionエラーが発生します。

  2. 必要に応じて、バックアッププランにタグを追加できます。

  3. バックアップルールの設定 : [バックアップルールの設定] セクションでは、バックアップのスケジュール、期間、およびライフサイクルを設定します。

  4. スケジュール:

    1. テキストフィールドにバックアップルール名を入力します。

    2. バックアップボールトメニューで、デフォルト を選択するか、新しいバックアップボールトの作成 を選択してボールトを作成します。

    3. バックアップ頻度メニューで、このプランでバックアップを作成する頻度を選択します。

  5. バックアップ期間:

    1. 開始時刻は、システムのローカルタイムゾーンでデフォルトで午前 12:30 (24 時間で 00:30) に設定されます。

    2. [次の時間以内に開始] のデフォルトは、8 時間です。これを変更して、バックアップを開始する時間帯を指定できます。

    3. [次の時間以内に完了] のデフォルトは、7 日です。ジョブが開始ウィンドウの最後に開始された場合でも、バックアップが完了するまでの十分な時間があることを確認してください。

  6. 継続的バックアップと point-in-time 復元 (PITR) point-in-time 継続的バックアップの復旧 (PITR) を有効にする を選択できます。このタイプのバックアップでサポートされているリソースを確認するには、「リソース別の機能の可用性 の表」を参照してください。

  7. ライフサイクル

    1. コールドストレージ : このボックスを選択すると、合計保持期間で指定したスケジュールに従って、対象となるリソースタイプをコールドストレージに移行できます。コールドストレージを使用するには、合計保持期間が 90 日以上である必要があります。

    2. Amazon EBS のコールドストレージAmazon EBS Snapshots Archive です。アーカイブのストレージ階層に移行されたスナップショットは、コンソールにコールド階層として表示されます。コールドストレージを有効にしてバックアップ頻度を毎月以下にした場合は、バックアッププランで EBS スナップショットを移行できます。

    3. [合計保持期間]は、リソースを AWS Backupに保持する日数です。ウォームストレージとコールドストレージを合計した日数となります。

  8. (オプション) バックアップのコピーを別の AWS リージョンに保存したい場合は、[コピー先にコピー] を使用して対象リソースのクロスリージョンコピーを作成します。

  9. (オプション) 復旧ポイントにタグを追加します。

  10. すべてのセクションを仕様に従って設定したら、[バックアップルールを保存] を選択します。

を使用したバックアッププランの作成 AWS CLI

JSON ドキュメントでバックアッププランを定義して、 AWS Backup コンソールまたは AWS CLIを使用して提供することもできます。次の JSON ドキュメントには、太平洋標準時 1:00 に日次バックアップを作成するサンプルバックアッププランが含まれています (該当する場合、現地時刻は夏時間、標準時間、夏時間の条件に調整されます)。1 年後にバックアップが自動的に削除されます。

{ "BackupPlan":{ "BackupPlanName":"test-plan", "Rules":[ { "RuleName":"test-rule", "TargetBackupVaultName":"test-vault", "ScheduleExpression":"cron(0 1 ? * * *)", "ScheduleExpressionTimezone":"America/Los_Angeles", "StartWindowMinutes":integer, // Value is in minutes "CompletionWindowMinutes":integer, // Value is in minutes "Lifecycle":{ "DeleteAfterDays":integer, // Value is in days } } ] } }

JSON ドキュメントは任意の名前で保存できます。次の CLI コマンドは、test-backup-plan.json という名前の JSON がある create-backup-plan を表示します。

aws backup create-backup-plan --cli-input-json file://PATH-TO-FILE/test-backup-plan.json

一部のシステムでは曜日に 0 から 6 までの番号が付けられますが、1 から 7 までの番号が付けられます。詳細については、「Cron 式」を参照してください。タイムゾーンの詳細については、「Amazon Location Service API リファレンスTimeZone」の「」を参照してください。

バックアッププランのオプションと設定

AWS Backup コンソールでバックアッププランを定義するときは、次のオプションを設定します。

バックアッププラン名

一意のバックアッププラン名を指定する必要があります。

既存のプラン名と同じ名前を選択すると、エラーメッセージが返されます。

バックアップルール

バックアッププランは、1 つ以上のバックアップルールで構成されます。バックアッププランにバックアップルールを追加するか、バックアッププラン内の既存ルールを編集するには、次の手順を実行します。

  1. AWS Backup コンソールの左側のナビゲーションペインで、バックアッププラン を選択します。

  2. [バックアッププラン名] で、バックアッププランを選択します。

  3. [バックアップルール] セクションで、

    • バックアップルールを追加するには、[バックアップルールの追加] を選択します。

    • 既存のバックアップルールを編集するには、ルールを選択し [編集] を選択します。

注記

複数のルールを含むバックアッププランがあり、2 つのルールの時間枠が重複している場合、 はバックアップ AWS Backup を最適化し、保持時間が長いルールのバックアップを作成します。最適化では、毎日のバックアップが行われるときだけでなく、フルスタートウィンドウも考慮されます。

各バックアップルールは以下の要素で構成されています。

バックアップルール名

バックアップルール名では大文字と小文字が区別されます。1 ~ 50 文字の英数字またはハイフンを含める必要があります。

Backup frequency

バックアップ頻度によって、スナップショットバックアップ AWS Backup を作成する頻度が決まります。頻度はコンソールを使用して、12 時間、毎日、毎週または毎月から選択できます。また、スナップショットのバックアップを 1 時間ごとに作成する cron 式を作成することもできます。 AWS Backup CLI を使用すると、スナップショットのバックアップを 1 時間ごとにスケジュールできます。

毎週を選択する場合は、バックアップする曜日を指定できます。毎月を選択する場合は、月の特定の日を選択できます。

サポートされているリソースの継続的バックアップを有効にするチェックボックスをオンにして、 point-in-time 復元 (PITR) 対応の継続的バックアップルールを作成することもできます。スナップショットバックアップとは異なり、継続的バックアップでは point-in-time 復元を実行できます。継続バックアップの詳細については、「ポイントインタイムリカバリ」を参照してください。

バックアップウィンドウ

バックアップウィンドウは、そのバックアップウィンドウの開始時刻と、ウィンドウの期間 (時間単位) で構成されます。バックアップジョブは、このウィンドウ内で開始されます。コンソールのデフォルト設定は以下のとおりです。

  • システムのタイムゾーンの現地時間午前 12 時 30 分 (24 時間システムでは 0 時 30 分)

  • 8 時間以内に開始

  • 7 日以内に完了

    ([以内に完了] パラメータは Amazon FSx リソースには適用されません)

cron 式を使用して、バックアップ頻度とバックアップウィンドウの開始時刻をカスタマイズできます。 AWS cron 式の 6 つのフィールドを確認するには、「Amazon CloudWatch Events ユーザーガイド」の「Cron 式」を参照してください。 AWS cron 式の 2 つの例は、 15 * ? * * * (1 時間ごとに 15 分後にバックアップを取る) と 0 12 * * ? * (毎日正午 UTC にバックアップを取る) です。例の表については、前のリンクをクリックしてページを下にスクロールします。

AWS Backup は 00:00 から 23:59 までの cron 式を評価します。「12 時間ごと」のバックアップルールを作成し、11:59 より後の開始時刻を指定すると、1 日に 1 回のみ実行されます。

継続的バックアップおよび point-in-time 復元 (PITR) は、一定期間に記録された変更を参照するため、時間式または cron 式でスケジュールすることはできません。

注記

一般に、 AWS データベースサービスはメンテナンスウィンドウの 1 時間前または間にバックアップを開始できず、Amazon FSx はメンテナンスウィンドウまたは自動バックアップウィンドウの 4 時間前または間にバックアップを開始できません (Amazon Aurora は、このメンテナンスウィンドウの制限から除外されます)。その間にスケジュールされたスナップショットバックアップは失敗します。

AWS Backup を使用して、サポートされているサービスのスナップショットバックアップと継続的バックアップの両方にオプトインする場合、例外が発生します。 AWS Backup では、競合を避けるため、バックアップウィンドウを自動的にスケジュールします。サポートされている サービスのリストと、 AWS Backup を使用して継続的なバックアップを作成する方法については、「ポイントインタイムリカバリ」を参照してください。

バックアップルールの重複

場合によっては、バックアッププランに複数の重複するルールが含まれている場合があります。異なるルールの開始ウィンドウが重複すると、 AWS Backup は保持期間が長いルールでバックアップを保持します。たとえば、次の 2 つのルールを持つバックアッププランを考えてみましょう。

  1. 1 時間のスタートウィンドウを使用して、毎時バックアップし、1 日保持します。

  2. 8 時間のスタートウィンドウを使用して、12 時間ごとにバックアップし、1 週間保持します。

24 時間後、2 番目のルールでは 2 つのバックアップを作成します (保持期間が長いため)。最初のルールでは 8 つのバックアップを作成します (2 番目のルールの 8 時間のスタートウィンドウでは、時間単位のバックアップの実行が妨げられるため)。具体的には次のとおりです。

このスタートウィンドウ中 このルールではバックアップを 1 つ作成します。
午前 0 時 ~ 午前 8 時 12 時間ごと
8 ~ 9 毎時
9 ~ 10 毎時
10 ~ 11 毎時
11 ~ 正午 毎時
正午 ~ 午後8時 12 時間ごと
8 ~ 9 毎時
9 ~ 10 毎時
10 ~ 11 毎時
11 ~ 午前 0 時 毎時

開始ウィンドウ中、バックアップジョブのステータスは、正常に開始されるか、開始ウィンドウの時間がなくなるまで CREATED ステータスのままになります。開始ウィンドウ時間内にジョブを再試行できるエラー AWS Backup を受け取った場合、 AWS Backup は、バックアップが正常に開始 (ジョブステータスが に変わるRUNNING) するか、ジョブステータスが に変わる EXPIRED (開始ウィンドウ時間が終了すると発生することが予想される) まで、少なくとも 10 分ごとにジョブの開始を自動的に再試行します。

ライフサイクルとストレージ階層

バックアップが保持される指定された期間のことを、バックアップの「ライフサイクル」と呼びます。バックアップはライフサイクルの終了時まで復元できます。

これは、 AWS Backup コンソールのバックアップルール設定のライフサイクルセクションで、合計保持期間として設定されます。

を使用する場合 AWS CLI、これはパラメータ を使用して設定されますDeleteAfterDays。スナップショットの保持期間は 1 日から 100 年 (入力しない場合は無期限) で、継続的バックアップの保持期間は 1 日から 35 日間です。バックアップの作成日は、バックアップジョブが開始された日付であり、完了した日付ではありません。バックアップジョブが開始されたのと同じ日付に完了しない場合は、バックアップジョブが開始された日付を使用して保持期間を計算します。

バックアップはストレージ階層で保持されます。「AWS Backup の料金」で説明されているように、ストレージと復元にかかるコストは階層ごとに異なります。作成されたバックアップはすべて、ウォームストレージに保存されます。バックアップの保持期間によっては、コールドストレージと呼ばれる低コストの階層にバックアップを移行した方がよい場合もあります。このオプション機能を利用できるリソースについては「リソース別の機能の可用性」を参照してください。

Console
  1. https://console.aws.amazon.com/backup で AWS Backup コンソールを開きます。

  2. バックアッププランを作成または編集します。

  3. バックアップルール設定のライフサイクルセクションで、[バックアップをウォームストレージからコールドストレージに移動] チェックボックスをオンにします。

  4. (オプション) Amazon EBS がバックアップ対象のリソースの 1 つで、バックアップ頻度が毎月以下の場合は、EBS Snapshots Archive を使用してそれらをコールド階層に移行できます。

  5. バックアップをウォームストレージに保持する値 (日数) を入力します。 AWS Backup は、少なくとも 8 日間を推奨します。

  6. 合計保持期間の値 (日数) を入力します。合計保持期間とウォームストレージでの保持時間の差は、バックアップがコールドストレージに保持される日数になります。

AWS CLI
  1. create-backup-plan または update-backup-plan を使用します。

  2. EBS リソースにはブール値パラメータ OptInToArchiveForSupportedResources を指定します。

  3. MoveToColdStorageAfterdays パラメータを指定します。

  4. DeleteAfterDays パラメータを使用します。この値は、MoveToColdStorageAfterDays に指定した値に 90 (日) を加えた値にする必要があります。

コールドストレージは現在、以下のリソースタイプで利用できます。

リソースタイプ コールドストレージでの増分バックアップまたはフルバックアップ

AWS CloudFormation

増分

高度な機能ありの DynamoDB

フル。どの階層でも増分バックアップは不可

Amazon EBS (EBS Snapshots Archive を使用)

フル。移行後、増分バックアップはフルバックアップになります。

Amazon EFS

増分

Amazon EC2 インスタンスで実行される SAP HANA データベース

増分

Amazon Timestream

増分

VMware 仮想マシン

増分

コンソールまたはコマンドラインでコールドストレージへの移行を有効にすると、コールドストレージ (またはアーカイブ) のバックアップには以下の条件が適用されます。

  • 移行するバックアップは、ウォームストレージの時間に加えて、コールドストレージに最低 90 日間保存する必要があります。 AWS Backup では、保持期間を「翌日のコールドへの移行」設定よりも 90 日間長く設定する必要があります。バックアップがコールドに移行された後に、「コールドへの移行 (日数)」設定を変更することはできません。

  • 増分バックアップをサポートするサービスもあります。増分バックアップの場合、少なくとも 1 つのウォームフルバックアップが必要です。 AWS Backup 少なくとも 8 日後までバックアップをコールドストレージに移動しないようにライフサイクル設定を設定することをお勧めします。フルバックアップがコールドストレージに移行しすぎる場合 (例えば、1 日後にコールドストレージに移行する場合)、 AWS Backup は別のウォームフルバックアップを作成します。

  • 増分バックアップをサポートするリソースタイプでは、移行された AWS Backup データがウォームバックアップによって参照されなくなった場合、 はデータをウォームストレージからコールドストレージに転送します。コールドストレージで保持されているバックアップ内のデータで、他のコールドストレージによってのみ参照されるデータには、コールドストレージ階層の料金が課金されます。それ以外のバックアップには、引き続きウォームストレージ階層の料金が適用されます。

バックアップボールト

バックアップボールトは、バックアップを整理するコンテナです。バックアップルールによって作成されたバックアップは、バックアップルールで指定されたバックアップボールトに整理されます。バックアップボールトを使用して、バックアップボールト内のバックアップを暗号化するために使用される AWS Key Management Service (AWS KMS) 暗号化キーを設定し、バックアップボールト内のバックアップへのアクセスを制御できます。バックアップボールトを整理しやすいように、バックアップボールトにタグを追加することもできます。デフォルトのボールトを使用しない場合は、独自のものを作成できます。バックアップボールトを作成する step-by-step 手順については、「」を参照してくださいステップ 3: バックアップボールトの作成

リージョンにコピー

バックアッププランの一部として、オプションで別の AWS リージョンにバックアップコピーを作成できます。詳細については、「AWS リージョン全体でのバックアップのコピーの作成」を参照してください。

バックアップコピーを定義するときは、次のオプションを構成します。

送信先リージョン

バックアップコピーの送信先リージョン。

(詳細設定) バックアップボールト

コピーの送信先バックアップボールト。

(詳細設定) IAM ロール

コピーの作成時に が AWS Backup 使用する IAM ロール。ロールは、 がロールを AWS Backup 引き受けることができる信頼されたエンティティとして AWS Backup リストされている必要もあります。デフォルト を選択し、 AWS Backup デフォルトのロールがアカウントに存在しない場合、正しいアクセス許可を持つロールが作成されます。

(詳細設定) ライフサイクル

バックアップコピーをコールドストレージに移行するタイミングと、コピーの有効期限 (削除) を指定します。コールドストレージに移行されたバックアップは、そこに最低 90 日保存される必要があります。コピーがコールドストレージに移行された後には、この値を変更できません。

[有効期限切れ] で、コピーが作成されてから削除されるまでの日数を指定します。これは、[コールドストレージへの移行] の値より 90 日以上大きい数値にする必要があります。

復旧ポイントに追加されるタグ

ここにリストするタグは、バックアップ作成時に自動的に追加されます。

バックアッププランに追加されるタグ

これらのタグは、バックアッププラン自体に関連付けられます。バックアッププランの整理と追跡に便利です。

バックアップの詳細設定

Amazon EC2 インスタンスで、実行中のサードパーティアプリケーションのアプリケーション整合性のあるバックアップを有効にします。現在、 は Windows VSS backups AWS Backup AWS Backup をサポートしています。Windows VSS バックアップから特定の Amazon EC2 インスタンスタイプを除外します。詳細については、「Windows VSS バックアップの作成」を参照してください。

AWS CloudFormation バックアッププランの テンプレート

リファレンス用に 2 つのサンプル AWS CloudFormation テンプレートが用意されています。最初のテンプレートでは、シンプルなバックアッププランを作成します。2 番目のテンプレートでは、バックアッププランで VSS バックアップが有効になります。

注記

デフォルトのサービスロールを使用している場合は、サービスロールAWSBackupServiceRolePolicyForBackup に置き換えます。

Description: backup plan template to back up all resources daily at 5am UTC, and tag all recovery points with backup:daily. Resources: KMSKey: Type: AWS::KMS::Key Properties: Description: "Encryption key for daily" EnableKeyRotation: True Enabled: True KeyPolicy: Version: "2012-10-17" Statement: - Effect: Allow Principal: "AWS": { "Fn::Sub": "arn:${AWS::Partition}:iam::${AWS::AccountId}:root" } Action: - kms:* Resource: "*" BackupVaultWithDailyBackups: Type: "AWS::Backup::BackupVault" Properties: BackupVaultName: "BackupVaultWithDailyBackups" EncryptionKeyArn: !GetAtt KMSKey.Arn BackupPlanWithDailyBackups: Type: "AWS::Backup::BackupPlan" Properties: BackupPlan: BackupPlanName: "BackupPlanWithDailyBackups" BackupPlanRule: - RuleName: "RuleForDailyBackups" TargetBackupVault: !Ref BackupVaultWithDailyBackups ScheduleExpression: "cron(0 5 ? * * *)" DependsOn: BackupVaultWithDailyBackups DDBTableWithDailyBackupTag: Type: "AWS::DynamoDB::Table" Properties: TableName: "TestTable" AttributeDefinitions: - AttributeName: "Album" AttributeType: "S" KeySchema: - AttributeName: "Album" KeyType: "HASH" ProvisionedThroughput: ReadCapacityUnits: "5" WriteCapacityUnits: "5" Tags: - Key: "backup" Value: "daily" BackupRole: Type: "AWS::IAM::Role" Properties: AssumeRolePolicyDocument: Version: "2012-10-17" Statement: - Effect: "Allow" Principal: Service: - "backup.amazonaws.com" Action: - "sts:AssumeRole" ManagedPolicyArns: - "arn:aws:iam::aws:policy/service-role/service-role" TagBasedBackupSelection: Type: "AWS::Backup::BackupSelection" Properties: BackupSelection: SelectionName: "TagBasedBackupSelection" IamRoleArn: !GetAtt BackupRole.Arn ListOfTags: - ConditionType: "STRINGEQUALS" ConditionKey: "backup" ConditionValue: "daily" BackupPlanId: !Ref BackupPlanWithDailyBackups DependsOn: BackupPlanWithDailyBackups
Description: backup plan template to enable Windows VSS and add backup rule to take backup of assigned resources daily at 5am UTC. Resources: KMSKey: Type: AWS::KMS::Key Properties: Description: "Encryption key for daily" EnableKeyRotation: True Enabled: True KeyPolicy: Version: "2012-10-17" Statement: - Effect: Allow Principal: "AWS": { "Fn::Sub": "arn:${AWS::Partition}:iam::${AWS::AccountId}:root" } Action: - kms:* Resource: "*" BackupVaultWithDailyBackups: Type: "AWS::Backup::BackupVault" Properties: BackupVaultName: "BackupVaultWithDailyBackups" EncryptionKeyArn: !GetAtt KMSKey.Arn BackupPlanWithDailyBackups: Type: "AWS::Backup::BackupPlan" Properties: BackupPlan: BackupPlanName: "BackupPlanWithDailyBackups" AdvancedBackupSettings: - ResourceType: EC2 BackupOptions: WindowsVSS: enabled BackupPlanRule: - RuleName: "RuleForDailyBackups" TargetBackupVault: !Ref BackupVaultWithDailyBackups ScheduleExpression: "cron(0 5 ? * * *)" DependsOn: BackupVaultWithDailyBackups