復元テストの検証
復元テストジョブの完了時に実行されるイベント駆動型の検証を作成するオプションがあります。
まず、AWS Lambda などの Amazon EventBridge でサポートされているターゲットを使用して検証ワークフローを作成します。2 つ目に、ステータス COMPLETED
に達した復元ジョブをリッスンする EventBridge ルールを追加します。3 つ目に、復元テストプランを作成 (または既存のプランをスケジュールどおりに実行) します。最後に、復元テストが完了したら、検証ワークフローのログをモニタリングして、想定どおりに実行されたことを確認します (検証が実行されると、検証ステータスが AWS Backup コンソール
-
検証ワークフローの設定
Lambda または EventBridge でサポートされている他のターゲットを使用して、検証ワークフローを設定できます。例えば、Amazon EC2 インスタンスを含む復元テストを検証する場合は、ヘルスチェックエンドポイントに ping を実行するコードを含めることができます。
イベントの詳細を使用して、検証するリソースを決定できます。
カスタム Lambda レイヤーを使って最新の SDK を使用できます (Lambda SDK を介して
PutRestoreValidationResult
はまだ利用できないため)。以下にサンプルを示します。
import { Backup } from "@aws-sdk/client-backup"; export const handler = async (event) => { console.log("Handling event: ", event); const restoreTestingPlanArn = event.detail.restoreTestingPlanArn; const resourceType = event.detail.resourceType; const createdResourceArn = event.detail.createdResourceArn; // TODO: Validate the resource const backup = new Backup(); const response = await backup.putRestoreValidationResult({ RestoreJobId: event.detail.restoreJobId, ValidationStatus: "SUCCESSFUL", // TODO ValidationStatusMessage: "" // TODO }); console.log("PutRestoreValidationResult: ", response); console.log("Finished"); };
-
EventBridge ルールの追加
復元ジョブの
COMPLETED
イベントをリッスンする EventBridge ルールを作成します。オプションで、リソースタイプまたは復元テストプラン ARN 別にイベントをフィルタリングできます。ステップ 1 で定義した検証ワークフローを呼び出すには、このルールのターゲットを設定します。以下がその例です。
{ "source":[ "aws.backup" ], "detail-type":[ "Restore Job State Change" ], "detail":{ "resourceType":[ "..." ], "restoreTestingPlanArn":[ "..." ], "status":[ "COMPLETED" ] } }
-
復元テストプランを実行して完了する
復元テストプランは、設定したスケジュールに従って実行されます。
まだ復元テストプランがない場合は「復元テストプランの作成」を、設定を変更する場合は「復元テストプランの更新」を参照してください。
-
結果のモニタリング
復元テストプランがスケジュールどおりに実行されたら、検証ワークフローのログをチェックして、正しく実行されたことを確認できます。
API
PutRestoreValidationResult
を呼び出して結果を投稿できます。これは AWS Backup コンソールで表示でき、 DescribeRestoreJob
やListRestoreJob
など、復元ジョブを記述および一覧表示する AWS Backup API コールを通じて表示できます。検証ステータスは、一度設定すると変更できなくなります。