恢复测试验证 - AWS Backup

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

恢复测试验证

您可以选择创建事件驱动的验证,该验证在恢复测试作业完成时运行。

首先,使用 Amazon 支持的任何目标创建验证工作流程 EventBridge,例如 AWS Lambda。其次,添加一条 EventBridge 规则,监听恢复任务是否达到状态COMPLETED。第三,制定恢复测试计划(或者让现有计划按计划运行)。最后,在还原测试完成后,监控验证工作流程的日志,确保其按预期运行(验证运行后,AWS Backup 控制台中将显示验证状态)。

  1. 设置验证工作流程

    您可以使用 Lambda 或支持的任何其他目标来设置验证工作流程。 EventBridge例如,如果您正在验证包含 Amazon EC2 实例的还原测试,则可以包含用于 ping 运行状况检查终端节点的代码。

    您可以使用事件中的详细信息来确定要验证哪些资源。

    您可以使用自定义 Lambda 层来使用最新版本 SDK(因为PutRestoreValidationResult尚无法通过 Lambda 获得)。SDK

    这是一个示例:

    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"); };
  2. 添加 EventBridge 规则

    创建监听还原作业COMPLETED事件的 EventBridge 规则。

    或者,您可以按资源类型或恢复测试计划筛选事件ARN。将此规则的目标设置为调用您在步骤 1 中定义的验证工作流程。示例如下:

    { "source":[ "aws.backup" ], "detail-type":[ "Restore Job State Change" ], "detail":{ "resourceType":[ "..." ], "restoreTestingPlanArn":[ "..." ], "status":[ "COMPLETED" ] } }
  3. 让恢复测试计划运行并完成

    恢复测试计划将根据您配置的时间表运行。

    如果您还没有恢复测试计划,请参阅创建恢复测试计划;如果要更改设置,请参阅更新恢复测试计划。

  4. 监控结果

    恢复测试计划按计划运行后,您可以检查验证工作流程的日志,以确保其正确运行。

    您可以调用发布结果,然后可以在AWS Backup 控制台中查看结果,也可以通过描述和列出还原作业(例如DescribeRestoreJobListRestoreJob)的 AWS Backup API调用进行查看。API PutRestoreValidationResult

    一旦设置了验证状态,就无法对其进行更改。