

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

# 复制 Amazon EBS 快照
<a name="ebs-copy-snapshot"></a>

在您创建快照并且快照达到 `completed` 状态后，可以创建其副本。快照副本是原始副本的精确副本，但它具有唯一资源 ID。您可以复制您拥有的快照以及私下或公开与您共享的快照。您可能需要为以下使用场景复制快照：
+ 地理扩展：您需要在新区域中启动您的应用程序。
+ 迁移：您需要将应用程序迁移到新目标，以实现更好的可用性或最大限度地降低成本。
+ 灾难恢复：您需要将数据和日志备份到辅助区域，以实现数据冗余。
+ 加密：您需要加密以前未加密的快照或使用其他 KMS 密钥重新加密已加密的快照。
+ 复制共享快照：您需要复制与您共享的快照。
+ 数据保留和审计要求 — 您需要将加密快照从一个 AWS 账户复制到另一个账户，以保留用于审计或数据保留的数据。如果您的主账户遭到入侵，使用其他 AWS 账户可以保护您。

要复制多卷快照，请使用您在创建期间分配的标签来识别该集合中的所有快照，然后将快照单独复制到所需的区域。

有关复制 Amazon RDS 快照的信息，请参阅 *Amazon RDS 用户指南* 中的[复制数据库快照](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CopySnapshot.html)。

**定价**  
有关复制快照的定价信息，请参阅 [Amazon EBS 定价](https://aws.amazon.com/ebs/pricing/)。

**Topics**
+ [复制快照的注意事项](#snapshot-copy-consids)
+ [快照副本的目的地](#snapshot-copy-destinations)
+ [增量快照复制](#ebs-incremental-copy)
+ [基于时间的副本](time-based-copies.md)
+ [加密和快照复制](#creating-encrypted-snapshots)
+ [复制快照](#ebs-snapshot-copy)

## 复制快照的注意事项
<a name="snapshot-copy-consids"></a>
+ 您可以复制 AWS Marketplace、虚拟机导入/导出和 Storage Gateway 快照，但必须验证目标区域是否支持该快照。
+ 每个目标限制并发快照复制请求不得超过 `20` 个。如果您超出此配额，会收到 `ResourceLimitExceeded` 错误。如果收到此错误，请等待一个或多个复制请求完成，然后再发出新的快照复制请求。
+ 用户定义的标签不会从源快照复制到快照副本。您可以在复制操作期间或之后添加用户定义的标签。
+ 由快照复制操作创建的快照具有任意性的卷 ID，例如 `vol-ffff` 或 `vol-ffffffff`。这些任意音量 IDs 不应用于任何目的。
+ 为快照复制操作指定的资源级权限可以应用于快照副本和源快照。有关示例，请参阅[示例：复制快照](https://docs.aws.amazon.com/ebs/latest/userguide/security_iam_id-based-policy-examples.html#iam-copy-snapshot)。
+ 如果复制已启用快速快照还原的快照，则快照副本不会自动启用快速快照还原。您必须为快照副本明确启用快速快照还原。
+ 如果将快照复制到新 KMS 密钥并将其加密，则会创建完整（非增量）副本。这会产生额外的存储成本。
+ 如果将快照复制到新区域，则会创建完整（非增量）副本。这会产生额外的存储成本。
+ 如果使用外部或跨区域数据传输，则将收取额外的 [EC2 数据传输](https://aws.amazon.com/ebs/pricing/)费用。如果在启动后删除任何快照，仍需要为已传输的数据付费。

## 快照副本的目的地
<a name="snapshot-copy-destinations"></a>

源快照的位置决定了您是否可以复制它。
+ 如果源快照位于某个区域，您可以在该区域内复制它，或者将其复制到另一个区域、与该区域关联的 Outpost 或该区域中的本地区域。
+ 如果源快照位于某个本地区域，您可以将其复制到同一本地区域内、同一区域组中的另一个本地区域，或者复制到该本地区域的父区域。
+ 如果源快照位于 Outpost 上，则无法复制它。

## 增量快照复制
<a name="ebs-incremental-copy"></a>

同一账户和区域内使用相同 KMS 密钥的快照复制操作始终是增量复制。但是，如果您使用不同的 KMS 密钥加密快照副本，则该副本是完整副本。

在跨区域或账户复制快照时，如果满足以下条件，则副本为增量副本：
+ 快照以前已复制到目标区域或账户。
+ 最新的快照副本仍位于目标区域或账户中。
+ 最新的快照副本尚未归档。
+ 目标区域或账户中的所有快照副本均未加密，或者是使用同一 KMS 密钥加密的。

**提示**  
我们建议您使用卷 ID 和创建时间来标记快照副本，以便在目标区域或账户中跟踪卷的最新快照副本。

要查看您的快照副本是否为增量副本，请查看 CopySn [apshot 事件](ebs-cloud-watch-events.md#copy-snapshot-complete) CloudWatch 。

# Amazon EBS 快照和 EBS 支持的基于时间的副本 AMIs
<a name="time-based-copies"></a>

基于时间的副本可以确保在指定的时间范围内在区域内和跨 AWS 区域复制 EBS 快照和 EBS 支持的 AMIs 副本，从而帮助您满足数据复制的合规性或业务要求。基于时间的副本还可以帮助备份管理员满足严格的灾难恢复要求（恢复点目标和恢复时间目标），并通过确保快照和EB AMIs S支持的复制时间可预测来提高开发灵活性。

使用基于时间的快照和 EBS 支持的 AMI 复制操作，您可以指定一个完成持续时间（15 分钟到 48 小时），在此期间必须完成复制。必须以 15 分钟为增量指定完成持续时间。

**Topics**
+ [配额](#time-based-copies-quota)
+ [确定完成持续时间](#time-based-copies-how)
+ [注意事项](#time-based-copies-considerations)
+ [监控](#time-based-copies-monitoring)
+ [定价和计费](#time-based-copies-pricing)

## 配额
<a name="time-based-copies-quota"></a>

下面的配额适用于基于时间的快照和 EBS 支持的 AMI 复制操作：


| 配额 | 说明 | 配额值 | 可调整 | 
| --- | --- | --- | --- | 
| 快照复制操作吞吐量配额 | 单次基于时间的快照复制操作可达到的最大吞吐量。 对于 AMI 复制操作，配额适用于与 AMI 关联的每个单独的快照。  | 500 MiB/s | 否 | 
| 累积快照副本吞吐量配额 | 源区域和目标区域之间基于时间的并发快照复制操作可以实现的最大累积吞吐量。 对于 AMI 复制操作，与 AMI 关联的每个单独的快照都会计入配额。 | 2,000 miB/s | [是](https://console.aws.amazon.com/servicequotas/home/services/ebs/quotas/L-E137849C) | 

当您启动**基于时间的快照复制操作**时，需要指定完成持续时间。请求所使用的吞吐量取决于快照数据的大小和请求的完成持续时间。例如，如果您复制一个包含 225,000 MiB (0.214 TiB) 数据的快照，并且您请求的完成持续时间为 15 分钟，则吞吐量为 250 MiB/s （225,000 MiB ε 15 分钟 = 250 MiB/s）。

当您启动**基于时间的 AMI 复制操作**时，您指定的完成持续时间将应用于与 AMI 关联的每个快照。由于每个快照的大小可能不同，因此每个快照都以不同的吞吐量进行复制，可确保在完成持续时间内复制所有快照。例如，假设您有一个 AMI 包含以下关联的快照：
+ 快照 1：200,000 MiB
+ 快照 2：500,000 MiB
+ 快照 3：450,000 MiB

如果为此 AMI 启动基于时间的复制，并指定完成持续时间 60 分钟，则该请求将使用以下吞吐量：
+ 快照 1：55.56 MiB/s （200,000 MiB ε 60 分钟 = 55.56 MiB/s）
+ 快照 2：138.89 MiB/s （500,000 MiB ε 60 分钟 = 138.89 MiB/s）
+ 快照 3：125 MiB/s （450,000 MiB ε 60 分钟 = 125 MiB/s）

这意味着该请求使用累积快照副本吞吐量配额的 319.45 MiB/s 来确保复制在 60 分钟内完成。

如果您启动基于时间的快照或 EBS 支持的 AMI 复制请求，并且您的可用累积快照复制吞吐量配额：
+ 大于或等于所需的吞吐率，则复制将在请求的完成持续时间内完成。
+ 小于所需的吞吐率但大于零，则请求会成功，但所需的时间将比您请求的要长。复制会使用您可用的吞吐量配额完成。
+ 为零（已达到配额），则请求会失败。

## 确定完成持续时间
<a name="time-based-copies-how"></a>

对于基于时间的快照或 EBS 支持的 AMI 复制操作，您可以请求的最短完成持续时间为 15 分钟，您可以请求的最长完成持续时间为 48 小时。必须以 15 分钟为增量指定完成持续时间。

**基于时间的并发快照复制操作**  
只要所有并发操作的总吞吐量不超过您的累积快照副本吞吐量配额（默认为 2,000 MiB/s ），您就可以在同一源区域和目标区域之间执行基于时间的并发快照复制操作。

要确定现有快照是否能达到所需的完成持续时间，请将所有快照的总大小除以所需的完成持续时间，以确定所需的吞吐率。

**提示**  
如果您不知道快照中数据的确切大小，则可以使用完整的快照大小作为代理。要获取完整的快照大小，请使用 desc [ribe-](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-snapshots.html) AWS CLI snapshots 命令。

```
required throughput rate = combined snapshot size ÷ required completion duration
```

如果所需的吞吐率小于您的累积快照复制吞吐量配额，则可以达到所需的完成持续时间。如果所需的吞吐率大于您的累积快照复制吞吐量配额，我们建议您请求将配额提高到比所需吞吐率至少高 10%。

**提示**  
Amazon EC2 控制台提供了一个计算器，可用于检查特定时间段内在两个区域之间复制的快照数据量，并检查根据特定的累积快照复制吞吐量配额可针对该数据量实现的最短完成持续时间。计算器使用该`SnapshotCopyBytesTransferred` CloudWatch 指标来计算一段时间内在两个区域之间复制的数据。要打开计算器，请在 Amazon EC2 控制台导航面板中，选择**快照**，然后选择**操作**、**启动复制持续时间计算器**。  
Local Zones 和 Wavelength Z AWS Outposts ones 不支持快照复制持续时间计算器。

**单个基于时间的快照复制操作**  


您可以通过将快照数据的大小除以快照复制操作吞吐量配额（500 MiB/s）来计算单个基于时间的快照复制操作的最短完成持续时间。

**提示**  
如果您不知道快照中数据的确切大小，则可以使用完整的快照大小作为代理。要获取完整的快照大小，请使用 desc [ribe-](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-snapshots.html) AWS CLI snapshots 命令。

```
minimum completion duration = Max(15 minutes, (snapshot data size ÷ 500 MiB/s)
```

例如，对于包含 900,000 MiB 数据的快照，最短完成持续时间为 30 分钟。

```
minimum completion duration = Max(15 minutes, (900,000 MiB ÷ 500 MiB/s)
= Max(15 minutes, 30 minutes)
= 30 minutes
```

**基于时间的 AMI 复制操作**  
当您为具有单个关联快照的 EBS 支持的 AMI 启动基于时间的 AMI 复制操作时，其行为方式将与**单个基于时间的快照复制操作**相同，并且具有相同的吞吐量限制。

当您为具有多个关联快照的 EBS 支持的 AMI 启动基于时间的 AMI 复制操作时，其行为方式与**并发基于时间的快照复制操作**相同，并且具有相同的吞吐量限制。每个关联的快照都会导致一个单独的快照复制请求，并且每个请求都会占用您的累积快照复制吞吐量配额。您指定的完成期限将应用于每个关联的快照。

## 注意事项
<a name="time-based-copies-considerations"></a>
+ 在同一区域内复制快照或跨区域复制快照时，您可以启动基于时间的快照和 EBS 支持的 AMI 复制操作。
+ 如果对同一快照或 AMI 启动两个基于时间的复制操作，则第二个复制操作的完成持续时间仅在第一个复制操作完成后才开始。
+ Local Zones 和 Wavelength Zones 不支持基于时间的复制操作和快照复制持续时间计算器。 AWS Outposts

## 监控
<a name="time-based-copies-monitoring"></a>

您可以使用 Amazon EC2 控制台和 AWS CLI监控基于时间的快照和 EBS 支持的 AMI 复制操作的进度。在控制台中，选择快照，然后在**详细信息选项卡**中检查**进度**字段。使用 AWS CLI，检查 desc [ribe-snapshots 命令响应](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-snapshots.html)中的`Progress`输出元素。

您可以通过检查控制台中的**开始时间**和**完成时间**之间的差异，或者检查 `describe-snapshots` 响应中的 `StartTime` 和 `CompletionTime` 之间的差异，来检查基于时间的快照或 EBS 支持的 AMI 复制操作是否在请求的完成持续时间内完成。

您还可以使用 `copySnapshot` Amazon EventBridge 事件来监控基于时间的复制操作的结果。该事件指示操作是否已完成以及是否满足了请求的完成持续时间。如果未满足完成持续时间，则该事件会包含有关原因的更多信息。有关更多信息，请参阅 [EBS 快照事件](ebs-cloud-watch-events.md#snapshot-events)。

## 定价和计费
<a name="time-based-copies-pricing"></a>

**注意**  
与标准快照复制操作类似，如果将快照复制到新区域，则会创建一个完整（非增量）副本，这会导致额外的存储成本。同一快照的后续副本是增量副本。此外，如果您使用外部或跨区域数据传输，则需支付额外的 Amazon EC2 数据传输费用。

基于时间的快照和 EBS 支持的 AMI 复制操作需额外收费。基于时间的复制操作按基于所请求完成持续时间的费率针对复制的快照数据量（以 GiB 为单位）计费。固定费率如下：

**注意**  
必须以 15 分钟为增量指定完成持续时间。最短完成持续时间为 15 分钟，最长完成持续时间为 48 小时。
+ 15 分钟：每 GiB 数据 0.020 美元
+ 30 分钟到 45 分钟：每 GiB 数据 0.018 美元
+ 1 小时到 1 小时 45 分钟：每 GiB 数据 0.016 美元
+ 2 小时到 3 小时 45 分钟：每 GiB 数据 0.014 美元
+ 4 小时到 7 小时 45 分钟：每 GiB 数据 0.012 美元
+ 8 小时到 15 小时 45 分钟：每 GiB 数据 0.010 美元
+ 16 小时或更长时间：每 GiB 数据 0.005 美元

例如，如果您复制一个包含 3,000 GiB 数据的快照，完成持续时间为 8 小时，则需要支付 30 美元（0.010 美元 x 3,000 GiB）的费用。

如果您启动了基于时间的复制操作，但由于超过配额而无法满足所请求完成持续时间，则需要根据实际完成持续时间而不是所请求完成持续时间付费。例如，如果请求的完成持续时间为 1 小时，但操作在 2 小时内完成，则需要按照 2 小时完成持续时间的费率进行计费。

如果 Amazon EBS 无法达到所请求完成持续时间，或者由于服务端问题而取消了请求，则不会收取基于时间的快照复制操作的额外费用。

如果在基于时间的快照复制操作仍在进行时删除快照副本，则将按指定的完成持续时间对应的费率针对截至该时间点已复制的数据付费。

## 加密和快照复制
<a name="creating-encrypted-snapshots"></a>

**注意**  
Amazon S3 服务器端加密（256 位 AES）可在复制操作期间保护传输中的快照数据。

您可以创建未加密的源快照的已加密快照副本。并且，您可以使用与源快照不同的 KMS 密钥加密快照副本。但是，在复制操作过程中更改快照副本的加密状态可能会生成完整（非增量）副本，这可能产生更多的数据传输和存储费用。

**提示**  
使用与您共享的已加密快照时，我们建议您通过复制快照并使用您拥有的 KMS 密钥来重新加密该快照。如果原始 KMS 密钥泄露或拥有者撤销您的访问权限（可能会导致您无法访问快照以及从中创建的任何加密卷），这可以保护您。

**复制加密快照的权限**

要复制加密快照，您的用户必须具有以下权限才能使用 Amazon EBS 加密。
+ 
  + `kms:DescribeKey`
  + `kms:CreateGrant`
  + `kms:GenerateDataKey`
  + `kms:GenerateDataKeyWithoutPlaintext`
  + `kms:ReEncrypt`
  + `kms:Decrypt`
+ 要复制从其他 AWS 账户共享的加密快照，您必须有权使用用于加密该快照的客户托管密钥。有关更多信息，请参阅 [共享用于加密共享的 Amazon EBS 快照的 KMS 密钥](share-kms-key.md)。

**快照副本的加密结果**  
下表描述了在复制您拥有的快照以及与您共享的快照时的加密结果。


| 目标区域的默认加密 | 源快照 | 快照副本加密结果 | 备注 | 
| --- | --- | --- | --- | 
| 已禁用 | 未加密 | 可选加密 | 如果加密副本，则可以指定要使用的 KMS 密钥。如果您对副本进行加密，但未指定 KMS 密钥，则默认使用指定的加密密钥。 | 
| 已禁用 | 已加密 | 自动加密 | 您可以指定要使用的 KMS 密钥。如果未指定 KMS 密钥，则使用 AWS 托管式密钥 （aws/ebs）。 | 
| 已启用 | 未加密 | 自动加密 | 您可以指定要使用的 KMS 密钥。如果未指定 KMS 密钥，则默认使用指定用于加密的密钥。 | 
| 已启用 | 已加密 | 自动加密 | 您可以指定要使用的 KMS 密钥。如果未指定 KMS 密钥，则默认使用指定用于加密的密钥。 | 

## 复制快照
<a name="ebs-snapshot-copy"></a>

您可以将快照从一个区域复制到另一个区域。您可以将未加密的快照复制到加密的快照。但是，如果您在未获得加密密钥使用权限的情况下试图复制加密快照，则操作将会静默失败，并且快照副本会收到“无法访问给定密钥 ID”状态消息。

------
#### [ Console ]

**复制快照**

1. 打开位于 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 的 Amazon EC2 控制台。

1. 在导航窗格中，选择**快照**。

1. 选择要复制的快照，然后选择 **Actions**（操作）、**Copy snapshot**（复制快照）。

1. （可选）在 **Description **（描述）中，输入快照副本的简短描述。

   在默认情况下，描述包括源快照的相关信息，以便您能区别副本和原始内容。

1. 指定快照副本的目标位置。
   + 要将快照复制到同一区域或其他区域，请选择 **AWS 区域**，然后选择目标区域。
   + 要将快照复制到本地区域，请选择 **AWS 本地区域**，然后选择目标本地区域。
   + （*仅限 Outpost 客户*）要将快照复制到 Outpost，请选择 **AWS Outpost**，然后输入目标 Outpost 的 ARN。

1. 如果需要在特定时间范围内完成快照复制，请选择**启用基于时间的复制**。在**完成期限**中，以 15 分钟为增量输入所需的完成期限。有关更多信息，请参阅 [Amazon EBS 快照和 EBS 支持的基于时间的副本 AMIs](time-based-copies.md)。

   如果不需要在特定时间范围内完成快照复制，则不要启用基于时间的复制。在这种情况下，快照复制会尽快完成。

1. （*仅限 Outpost 客户*）要在所选区域中的 Outpost 上创建快照副本，对于**快照目标**，请选择 **AWS Outpost**，然后对于**目标 Outpost ARN**，请输入要将快照复制到的 Outpost 的 ARN。仅当您在所选区域中拥有 Outpost 时，才会出现**快照目标**字段。

1. 指定快照副本的加密状态。

   如果源快照已加密，或者您的账户已启用[默认加密](encryption-by-default.md)，则快照副本会自动加密。如果源快照未加密，并且在默认情况下未为您的账户启用加密，则您可以选择启用或禁用加密。

1. 选择**复制快照**。

------
#### [ AWS CLI ]

**将快照复制到其他区域**  
使用 [copy-snapshot](https://docs.aws.amazon.com/cli/latest/reference/ec2/copy-snapshot.html) 命令。以下示例将指定的快照从源区域复制到当前区域，当前区域由 `--region` 选项指定。

```
aws ec2 copy-snapshot \
    --source-snapshot-id snap-0abcdef1234567890 \
    --source-region us-east-1 \
    --region us-west-2
```

**将未加密的快照复制到加密的快照**  
使用 [copy-snapshot](https://docs.aws.amazon.com/cli/latest/reference/ec2/copy-snapshot.html) 命令。以下示例将指定的未加密快照从源区域复制到当前区域，并使用指定的 KMS 密钥对新快照进行加密。

```
aws ec2 copy-snapshot \
    --source-snapshot-id snap-0abcdef1234567890 \
    --source-region us-east-1 \
    --encrypted \
    --kms-key-id alias/my-kms-key
```

------
#### [ PowerShell ]

**将快照复制到其他区域**  
使用 [Copy-EC2Snapshot](https://docs.aws.amazon.com/powershell/latest/reference/items/Copy-EC2Snapshot.html) cmdlet。以下示例将指定的快照从源区域复制到当前区域，当前区域由 `--region` 选项指定。

```
 Copy-EC2Snapshot `
    -SourceSnapshotId snap-0abcdef1234567890 `
    -SourceRegion us-east-1 `
    -Region us-west-2
```

**将未加密的快照复制到加密的快照**  
使用 [Copy-EC2Snapshot](https://docs.aws.amazon.com/powershell/latest/reference/items/Copy-EC2Snapshot.html) cmdlet。以下示例将指定的未加密快照从源区域复制到当前区域，并使用指定的 KMS 密钥对新快照进行加密。

```
 Copy-EC2Snapshot `
    -SourceSnapshotId snap-0abcdef1234567890 `
    -SourceRegion us-east-1 `
    -Encrypted $true `
    -KmsKeyId alias/my-kms-key
```

------