还原测试 - Amazon Backup
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

还原测试

还原测试是 Amazon Backup 提供的一项功能,它可以自动定期评估还原的可行性,并能够监控还原作业的持续时间。

概览

首先,创建还原测试计划,在其中提供计划的名称、还原测试的频率和目标开始时间。然后,分配要包含在计划中的资源。然后,您可以选择在测试中包括特定或随机的恢复点。Amazon Backup Backup 可以智能地推断成功完成还原作业所需的元数据

当计划中的预定时间到来时,Amazon Backup 会根据您的计划启动还原作业,并监控完成还原所需的时间。

在还原测试计划完成运行后,您可以使用结果来证明是否符合组织或监管要求,例如,成功完成还原测试方案或还原作业的完成时间。

或者,您可以使用还原测试验证来确认还原测试结果。

在可选验证完成或验证窗口关闭后,Amazon Backup 将删除还原测试涉及的资源,并根据服务 SLA 删除这些资源。

在测试过程结束时,您可以查看测试的结果和完成时间。

还原测试与还原过程的比较

还原测试以与按需还原相同的方式运行还原作业,并使用与按需还原相同的恢复点(备份)。对于通过还原测试启动的每项作业,您将可以在 CloudTrail(如果已选择加入)中看到对 StartRestoreJob 的调用

但是,计划还原测试的操作和按需还原操作之间有一些区别:

还原测试 还原

账户

推荐的最佳做法是指定一个用于还原测试的账户

您可以从账户还原资源

Amazon Backup Audit Manager

可以启用控制功能以确认还原测试是否达到指定的还原目标

节奏

作为计划的一部分定期实施。

按需

资源

您可以为测试计划分配的资源类型包括:Aurora、Amazon DocumentDB、Amazon DynamoDB、Amazon EBS、Amazon EC2、Amazon EFS、Amazon FSx(Lustre、ONTAP、OpenZFS、Windows)、Amazon Neptune、Amazon RDS 和 Amazon S3。

所有资源均可还原。

结果

还原测试作业完成后,将在还原测试验证时段结束后删除还原的资源。

还原作业完成后,资源的还原版本将保留。

标签

对于在还原时支持标签的资源类型,测试功能会在还原时应用标签。

对于支持的资源,标签是可选的。

还原测试管理

您可以在 Amazon Backup 控制台中创建、查看、更新或删除还原测试计划。

您可以使用 Amazon CLI 以编程方式执行还原测试计划的操作。每个 CLI 都特定于其来源的 Amazon 服务。命令应前缀 aws backup

数据删除

还原测试完成后,Amazon Backup 开始删除测试中涉及的资源。此删除操作不会即时完成。每种资源都有一种底层配置,用于确定这些资源的存储方式和生命周期过程。例如,如果 Amazon S3 存储桶是还原测试的一部分,则会将生命周期规则添加到存储桶。执行规则和完全删除存储桶及其对象最多可能需要几天时间,但对于这些资源,只会在生命周期规则启动日之前(默认情况下为 1 天)收费。删除速度将取决于资源类型。

作为还原测试计划一部分的资源包含一个名为 awsbackup-restore-test 的标签。如果用户删除了此标签,则 Amazon Backup 无法在测试期结束时删除该资源,用户必须手动将其删除。

要检查未按预期删除资源的原因,可以在控制台中搜索失败的作业,或者使用命令行界面调用 API 请求 DescribeRestoreJob 来检索删除状态消息。

备份计划(非还原测试计划)会忽略通过还原测试创建的资源(带有标签 awsbackup-restore-test 或名称以 awsbackup-restore-test 开头的资源)。

成本控制

对于还原测试,按每次还原测试收费。根据您的还原测试计划中包含的资源,作为计划一部分的还原作业也可能产生费用。有关详细信息,请参阅 Amazon Backup 定价

首次设置还原测试计划时,您可能会发现包括最少数量的资源类型和受保护资源会很有用,这样可以熟悉相关的功能、流程和平均成本。您可以在创建计划后对其进行更新,以添加更多资源类型和受保护的资源。

创建还原测试计划

还原测试计划分为两个部分:创建计划和分配资源。

使用控制台时,这些部分是按顺序进行的。在第一部分中,您将要设置名称、频率和开始时间。在第二部分中,您将要为测试计划分配资源。

使用 Amazon CLI 和 API 时,请先使用 create-restore-testing-plan。收到成功响应且已创建计划后,请针对要包含在计划中的每种资源类型使用 create-restore-testing-selection

当您创建还原测试计划时,我们会为您创建服务相关角色。有关更多信息,请参阅 使用角色进行还原测试

Console
第 I 部分:使用控制台创建还原测试计划
  1. 打开 Amazon Backup 控制台,网址为:https://console.aws.amazon.com/backup

  2. 在左侧导航窗格中,找到还原测试并将其选中。

  3. 选择创建还原测试计划

  4. 常规

    1. 名称:键入新还原测试计划的名称。名称一经创建便无法更改。名称只能包含字母数字字符和下划线。

    2. 测试频率:选择还原测试的运行频率。

    3. 开始时间:设置您希望开始测试的时间(以小时和分钟为单位)。您还可以设置本地时区以运行还原测试计划。

    4. 开始时间范围:此值(以小时为单位)是指定在其中开始还原测试的时间段。Amazon Backup 尽最大努力在“开始时间范围”内启动所有指定的还原作业,并将开始时间随机安排在此时间段内。

  5. 恢复点选择:在这里,您可以设置源保管库、恢复点范围以及对要在计划中包含的恢复点(备份)的选择标准。

    1. 源保管库:选择是包含所有可用的保管库,还是仅包含特定保管库,以帮助筛选您的计划中可以包含哪些恢复点。如果您选择特定保管库,请从下拉菜单中选择要包含的保管库。

    2. 符合条件的恢复点:指定将从中选择恢复点的时间范围。您可以选择 1 到 365 天、1 到 52 周、1 到 12 个月或 1 年。

    3. 选择标准:指定恢复点的日期范围后,您可以选择是将最新的恢复点还是随机选择的恢复点包含在计划中。您可能希望随机选择一个来以更规则的频率衡量恢复点的总体运行状况,以防需要还原到旧版本。

    4. 时间点恢复点:如果您的计划包括具有连续备份(时间点还原/PITR)点的资源,则可以选中此框,让您的测试计划包括连续备份作为符合条件的恢复点(请参阅按资源划分的特征可用性,了解哪些资源类型具有此特征)。

  6. (可选)已添加到还原测试计划的标签:您最多可以选择在还原测试计划中添加 50 个标签。每个标签必须单独添加。要添加新标签,请选择添加新标签

第 II 部分:使用控制台为计划分配资源

在本节中,您可以选择已备份的资源以包含在还原测试计划中。您将选择资源分配的名称,选择用于还原测试的角色,并设置清理前的保留期。然后,您将要选择资源类型,选择范围,并有选择地使用标签来细化选择。

提示

要返回到要向其中添加资源的还原测试计划,您可以转到 Amazon Backup 控制台,选择还原测试,然后找到您的首选测试计划并将其选中。

  1. 常规

    1. 资源分配名称:使用一串字母数字字符和下划线输入此资源分配的名称,不要含空格。

    2. 还原 IAM 角色:测试必须使用您指定的 Identity and Access Management(IAM)角色。您可以选择 Amazon Backup 默认角色,也可以选择其他角色。如果在完成此过程时 Amazon Backup 默认角色尚不存在,则 Amazon Backup 将使用必要的权限自动为您创建默认角色。您为还原测试选择的 IAM 角色必须包含在 AWSBackupServiceRolePolicyForRestores 中找到的权限。

    3. 清理前的保留期:在还原测试期间,会临时还原备份数据。默认情况下,将在测试完成后删除这些数据。如果您希望在还原时运行验证,则可以选择延迟删除这些数据。

      如果您计划运行验证,请选择保留特定的小时数,然后输入一个介于 1 到 168 小时(含)之间的值。请注意,验证可以通过编程方式运行,但不能从 Amazon Backup 控制台运行。

  2. 受保护的资源:

    1. 选择资源类型:选择要包含在资源测试计划中的资源类型以及这些类型的备份的范围。每个计划可以包含多种资源类型,但必须将每种类型的资源单独分配给计划。

    2. 资源选择范围:选择类型后,选择是要包括该类型的所有可用受保护资源,还是只想包括特定的受保护资源。

    3. (可选)使用标签优化资源选择:如果您的备份具有标签,则可以按标签筛选以选择特定的受保护资源。输入标签键、包含或不包含此键的条件以及该键的值。然后,选择添加标签按钮。

      通过检查包含受保护资源的备份保管库中最新恢复点上的标签来评估受保护资源上的标签。

  3. 还原参数:某些资源需要指定参数以便为执行还原作业做好准备。在大多数情况下,Amazon Backup 将根据存储的备份推断值。

    在大多数情况下,建议保留这些参数;但是,您可以通过从下拉菜单中选择不同的选项来更改这些值。例如,最好更改值的情况可以包括:覆盖加密密钥、无法推断数据的 Amazon FSx 设置以及创建子网。

    例如,如果 RDS 数据库是您分配给还原测试计划的资源类型之一,则可用区、数据库名称、数据库实例类和 VPC 安全组等参数将显示并带有推断出的值,您可以根据情况对其进行更改。

Amazon CLI

CLI 命令 CreateRestoreTestingPlan 用于制定还原测试计划。

测试计划必须包含:

  • RestoreTestingPlan,它必须包含一个唯一的 RestoreTestingPlanName

  • ScheduleExpression cron 表达式

  • RecoveryPointSelection

    尽管命名类似,但这与 RestoreTestingSelection 一样。

    RecoveryPointSelection 有五个参数(三个必需参数和两个可选参数)。您指定的值决定了要在还原测试中包括的恢复点。您必须使用 Algorithm 指明是想要 SelectionWindowDays 内的最新恢复点,还是想要一个随机恢复点,并且您必须通过 IncludeVaults 指明可以从哪些保管库中选择恢复点。

一个选项可以具有一个或多个受保护的资源 ARN,也可以具有一个或多个条件,但不能同时具有这两者。

您也可以添加:

使用 CLI 命令 create-restore-testing-plan

成功创建计划后,您需要使用 create-restore-testing-selection 为其分配资源。

它包括 RestoreTestingSelectionNameProtectedResourceType 和以下项之一:

注意

RestoreTestingSelectionName 命名要求:

  • 长度必须为 1-256 个字符

  • 可以包含字母(a-z,A-Z)、数字(0-9)、连字符(-)和下划线(_)

  • 必须以字母或数字开头

  • 不得以连字符或下划线结尾

  • 在还原测试计划中必须是唯一的

  • ProtectedResourceArns

  • ProtectedResourceConditions

每种受保护的资源类型可以具有一个单一值。还原测试选择可以包括带通配符值(“*”)的 ProtectedResourceArns 以及 ProtectedResourceConditions。或者,您最多可以在 ProtectedResourceArns 中包括 30 个特定的受保护资源 ARN。

恢复点确定

每次运行测试计划(根据您指定的频率和开始时间)时,还原测试都会为所选的每个受保护资源还原一个符合条件的恢复点。如果某个资源的恢复点不符合恢复点选择标准,该资源将不包括在测试中。

测试选择中受保护资源的恢复点如果满足指定时间范围标准,并在还原测试计划中包含了保管库,则符合条件。

如果资源测试选择包括资源类型,并且满足以下任一条件,则会选择受保护的资源:

  • 在该选择中指定资源 ARN;或者,

  • 该选择的标签条件与资源最新恢复点的标签相匹配

更新还原测试计划

您可以通过控制台或 Amazon CLI 更新部分还原测试计划以及其中的资源选项。

Console
在控制台中更新还原测试计划和选项

在控制台中查看还原测试计划详细信息页面时,可以编辑(更新)计划的许多设置。为此,请执行以下操作:

  1. 打开 Amazon Backup 控制台,网址为:https://console.aws.amazon.com/backup

  2. 在左侧导航窗格中,找到还原测试并将其选中。

  3. 选择编辑按钮。

  4. 调整频率、开始时间,以及所选开始时间后的测试开始时间范围。

  5. 保存您的更改。

Amazon CLI
通过 Amazon CLI 更新还原测试计划和选项

请求 UpdateRestoreTestingPlanUpdateRestoreTestingSelection 可用于向指定计划或选项发送部分更新。名称无法更改,但您可以更新其他参数。在每个请求中仅包含您想要更改的参数。

在发送更新请求之前,请使用 GetRestoreTestingPlanGetRestoreTestingSelection 确定 RestoreTestingSelection 是否包含特定 ARN 或者它是否使用通配符和条件。

如果您的还原测试选择指定了 ARN(而不是通配符),并且您希望将其更改为带条件的通配符,则更新请求必须同时包含 ARN 通配符和条件。选项可以具有受保护的资源 ARN,也可以使用带条件的通配符,但不能两者兼而有之。

查看现有的还原测试计划

Console
在控制台中查看有关现有还原测试计划和已分配资源的详细信息
  1. 打开 Amazon Backup 控制台,网址为:https://console.aws.amazon.com/backup

  2. 从左侧导航窗格中,选择还原测试。显示屏中显示您的还原测试计划。默认情况下,会在最后一次运行时之前显示计划。

  3. 从计划中选择链接以查看其详细信息,包括计划的摘要、名称、频率、开始时间和开始时间范围值。

您还可以查看此计划中的受保护资源、此计划中包含的最近 30 天的还原测试作业,以及您可以创建的要作为此测试计划一部分的任何标签。

Amazon CLI

使用命令行获取有关现有还原测试计划和测试选项的详细信息

查看还原测试作业

Console
查看控制台中的现有还原测试作业

还原测试作业包含在“还原作业”页面上。

  1. 打开 Amazon Backup 控制台,网址为:https://console.aws.amazon.com/backup

  2. 导航至作业页面。

    或者,您可以选择还原测试,然后选择还原测试计划以查看其详细信息以及与该计划关联的作业。

  3. 选择还原作业选项卡。

    在此页面上,您可以查看还原作业的状态、还原时间、还原类型、资源 ID、资源类型、作业所属的还原测试计划、创建时间和恢复点 ID。

    还原测试计划中包含的作业的还原类型为测试

还原测试作业具有以下几个状态类别:

  • 需要注意的状态类型带有下划线;将鼠标悬停在状态上方可查看其他详细信息(如果有)。

  • 如果已对测试启动还原测试验证(在控制台中不可用),则会显示验证状态

  • 删除状态记录了还原测试生成的数据的状态。可能的删除状态有三种:成功正在删除失败

    如果删除还原测试作业失败,则需要手动删除资源,因为还原测试流程无法自动完成该删除操作。通常,如果从资源中删除标签 awsbackup-restore-test,则会导致删除失败。

Amazon CLI
在命令行中查看现有还原测试作业

删除还原测试计划

Console
在控制台中删除还原测试计划
  1. 转至 查看现有的还原测试计划 查看您当前的还原测试计划。

  2. 在还原测试计划详细信息页面上,通过选择删除来删除计划。

  3. 选择删除后,将出现一个弹出式确认屏幕,以确保您要删除计划。在此屏幕上,您的特定还原测试计划的名称将以粗体显示。要继续,请键入测试计划的确切名称(区分大小写),其中可包括任何下划线、破折号和句点。

    如果无法选择删除还原测试计划选项,请重新输入名称,直到它与显示的名称相匹配。一旦它完全匹配,用于删除还原测试计划的选项将变为可选状态。

Amazon CLI
通过命令行删除还原测试计划

CLI 命令 DeleteRestoreTestingSelection 可用于删除还原测试选择。在请求中包含 RestoreTestingPlanNameRestoreTestingSelectionName

必须先删除与测试计划关联的所有测试选项,然后才能删除测试计划。删除所有测试选项后,您可以使用 API 请求 DeleteRestoreTestingPlan 删除还原测试计划。您需要包括 RestoreTestingPlanName

审核还原测试

还原与 Amazon Backup Audit Manager 的测试集成,以帮助您评估资源还原是否在目标还原时间内完成。

有关更多信息,请参阅 Amazon Backup Audit Manager 控制和修复中的资源还原时间满足目标控制。

还原测试配额和参数

  • 100 个还原测试计划

  • 可向每个还原测试计划中添加 50 个标签

  • 每个计划 30 个选项

  • 每个选项 30 个受保护的资源 ARN

  • 每个选项 30 个受保护的资源条件(包括 StringEqualsStringNotEquals 中的条件)

  • 每个选项 30 个保管库选择器

  • 最大选择时段天数:365 天

  • 开始时段小时数:最短:1 小时;最长:168 小时(7 天)

  • 计划名称的最大长度:50 个字符

  • 选项名称的最大长度:50 个字符

有关限制的更多信息,可通过 Amazon Backup 配额进行查看。

还原测试失败故障排除

如果您的还原测试作业的还原状态为 Failed,则以下原因可帮助您确定原因和补救措施。

可以在 Amazon Backup 控制台的作业状态详细信息页面查看错误消息,也可以使用 CLI 命令 list-restore-jobs-by-protected-resourcelist-restore-jobs 进行查看。

  1. 错误:No default VPC for this user. GroupName is only supported for EC2-Classic and default VPC.

    解决方案 1:更新您的还原测试选择并覆盖参数 SubnetId。Amazon Backup 控制台将此参数显示为“子网”。

    解决方案 2:重新创建默认 VPC

    受影响的资源类型:Amazon EC2

  2. 错误:No subnets found for the default VPC [vpc]. Please specify a subnet.

    解决方案 1:更新您的还原测试选择并覆盖 SubnetId 还原参数。Amazon Backup 控制台将此参数显示为“子网”。

    解决方案 2:在默认 VPC 中创建默认子网

    受影响的资源类型:Amazon EC2

  3. 错误:No default subnet detected in VPC. Please contact Amazon Web Services 支持 to recreate default Subnets.

    解决方案 1:更新您的还原测试选择并覆盖 DBSubnetGroupName 还原参数。Amazon Backup 控制台将此参数显示为“子网组”。

    解决方案 2:在默认 VPC 中创建默认子网

    受影响的资源类型:Amazon Aurora、Amazon DocumentDB、Amazon RDS、Neptune

  4. 错误:IAM Role cannot be assumed by Amazon Backup

    解决方案:还原角色必须能够由 Amazon Backup 代入。要么在 IAM 中更新角色的信任策略以允许其由 "backup.amazonaws.com" 代入,要么更新您的还原测试选择以使用可由 Amazon Backup 代入的角色。

    受影响的资源类型:全部

  5. 错误:Access denied to KMS key.The specified Amazon KMS key ARN does not exist, is not enabled or you do not have permissions to access it.

    解决方案:验证以下内容:

    1. 还原角色可以访问用于加密备份的 Amazon KMS 密钥,以及用于加密已还原资源的 KMS 密钥(如果适用)。

    2. 上述 KMS 密钥的资源策略允许还原角色访问它们。

    如果尚未满足上述条件,请配置还原角色和资源策略以获得适当的访问权限。然后,再次运行还原测试作业。

    受影响的资源类型:全部

  6. 错误:User ARN is not authorized to perform action on resource because no identity based policy allows the action.Access denied performing s3:CreateBucket on awsbackup-restore-test-xxxxxx

    解决方案:还原角色没有足够的权限。在 IAM 中更新还原角色的权限。

    受影响的资源类型:全部

  7. 错误:User ARN is not authorized to perform action on resource because no resource-based policy allows the action.User ARN is not authorized to perform action on resource with an explicit deny in a resource based policy.

    解决方案:还原角色对消息中指定的资源没有足够的访问权限。更新所述资源的资源政策。

    受影响的资源类型:全部