复制 Amazon EBS 快照 - Amazon Elastic Compute Cloud
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

复制 Amazon EBS 快照

利用 Amazon EBS,您可以创建卷的时间点快照,我们为您将其存储在 Amazon S3 中。创建快照并且已完成到 Amazon S3 的复制(快照状态为 completed 时)后,您可将快照从一个 Amazon 区域复制到另一个区域,也可在相同区域内复制。Amazon S3 服务器端加密(256 位 AES)可在复制操作期间保护传输中的快照数据。快照副本将获得与原始快照 ID 不同的 ID。

要将多卷快照复制到另一个 Amazon 区域,请使用您在创建快照时应用于多卷快照集的标签检索快照。然后分别将快照复制到另一个区域。

如果希望另一账户能够复制您的快照,您必须修改快照权限以允许访问该账户,或使快照公开可用,以便所有 Amazon 账户均可复制它。有关更多信息,请参阅共享 Amazon EBS 快照

有关复制 Amazon RDS 快照的信息,请参阅 Amazon RDS 用户指南 中的复制数据库快照

使用案例
  • 地理扩展:在新 Amazon 区域中启动您的应用程序。

  • 迁移:将应用程序迁移到新区域,以实现更好的可用性以及最大限度地降低成本。

  • 灾难恢复:在不同的地理位置定期备份您的数据和日志。出现灾难情况时,您可以使用辅助区域存储的时间点备份恢复您的应用程序。该操作能够让数据丢失和恢复时间降至最低。

  • 加密:对之前未加密的快照进行加密、更改用于加密快照的密钥,或创建您拥有的副本以从中创建卷(用于与您共享的加密快照)。

  • 数据保留和审计要求:将您的加密 EBS 快照从一个 Amazon 账户复制到另一个账户,以保留数据日志或其他文件,便于进行审计或数据保留。使用不同的账户有助于防止意外删除快照,并在您的主要 Amazon 账户遭到泄露时为您提供保护。

先决条件

  • 您可以复制任何状态为 completed 的可访问快照,包括共享快照和您创建的快照。

  • 您可以复制 Amazon Web Services Marketplace、VM Import/Export 和 Storage Gateway 快照,但必须确认目标区域支持该快照。

  • 要复制加密快照,您的用户必须具有以下权限才能使用 Amazon EBS 加密。

    • kms:DescribeKey

    • kms:CreateGrant

    • kms:GenerateDataKey

    • kms:GenerateDataKeyWithoutPlaintext

    • kms:ReEncrypt

    • kms:Decrypt

  • 要复制从其他 Amazon 账户共享的加密快照,您必须具有使用用于加密快照的客户自主管理型密钥的权限。有关更多信息,请参阅共享 KMS 密钥

注意事项

  • 每个目标区域限制并发快照复制请求不得超过 20 个。如果您超出此配额,会收到 ResourceLimitExceeded 错误。如果收到此错误,请等待一个或多个复制请求完成,然后再发出新的快照复制请求。

  • 用户定义的标签不会从源快照复制到新快照。您可以在复制操作期间或之后添加用户定义的标签。有关更多信息,请参阅标记 Amazon EC2 资源

  • 由快照复制操作创建的快照具有任意性的卷 ID,例如 vol-ffffvol-ffffffff。这些任意性的卷 ID 不应用于任何目的。

  • 为快照复制操作指定的资源级权限仅适用于新快照。您不能为源快照指定资源级权限。有关示例,请参阅示例:复制快照

定价

  • 有关跨 Amazon 区域和账户复制快照的定价信息,请参阅 Amazon EBS 定价

  • 如果将快照复制到新 KMS 密钥并将其加密,则会创建完整(非增量)副本。这会产生额外的存储成本。

  • 如果将快照复制到新区域,则会创建完整(非增量)副本。这会产生额外的存储成本。同一快照的后续副本是增量副本。

  • 使用同一客户托管密钥的同一账户和同一区域的快照的第一个快照副本将是完整(非增量)副本。这会产生额外的存储成本。同一快照的后续副本是增量副本。

  • 如果使用外部或跨区域数据传输,则将收取额外的 EC2 数据传输费用。而且,如果在启动后删除任何快照,仍需要为已传输的数据付费。

增量快照复制

快照副本是否为增量副本是由最近完成的快照复制决定的。在跨区域或账户复制快照时,如果满足以下条件,则副本为增量副本:

  • 快照以前已复制到目标区域或账户。

  • 最新的快照副本仍位于目标区域或账户中。

  • 目标区域或账户中的所有快照副本均未加密,或者是使用同一 KMS 密钥加密的。

如果删除了最新的快照副本,则下一个副本是完整副本,而不是增量副本。如果某个副本在您启动另一个副本时仍处于挂起状态,则第二个副本仅在第一个副本完成后才开始。

使用客户托管密钥在单个账户和同一区域内进行快照复制操作将生成完整(非增量)副本。同一快照的后续副本是增量副本。

增量快照复制会缩短复制快照所需的时间,并且不会复制数据,从而节省数据传输和存储成本。

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

要确定快照副本是否为增量副本,请检查 copySnapshot CloudWatch 事件。

加密和快照复制

在复制快照时,您可以加密副本,也可以指定一个与原始快照不同的 KMS 密钥,这样,生成的快照副本将使用新 KMS 密钥。但是,在复制操作过程中更改快照的加密状态可能会生成完整(非增量)副本,这可能产生更多的数据传输和存储费用。有关更多信息,请参阅增量快照复制

要复制从其他 Amazon 账户共享的加密快照,您必须拥有使用该快照以及用于加密快照的客户自主管理型密钥(CMK)的权限。使用与您共享的加密快照时,我们建议您使用您拥有的 KMS 密钥复制快照以对其进行重新加密。这样,即使原始 KMS 密钥泄露或拥有者将其撤销,您也不会失去对使用快照创建的任何加密卷的访问权限。有关更多信息,请参阅共享 Amazon EBS 快照

您可以将 Encrypted 参数设置为 true,以将加密应用到 EBS 快照副本。(如果启用了默认加密Encrypted 参数是可选的)。

或者,您可以使用 KmsKeyId 指定要用于加密快照副本的自定义密钥。(即使启用了默认加密,也必须将 Encrypted 参数设置为 true。) 如果未指定 KmsKeyId,则用于加密的密钥取决于源快照的加密状态及其所有权。

下表描述了在复制您拥有的快照以及与您共享的快照时,每种可能设置组合的加密结果。

主题
    默认加密 是否设置了 Encrypted 参数? 源快照加密状态 默认值(未指定 KMS 密钥) 自定义(已指定 KMS 密钥)
    已禁用 未加密 未加密 不适用
    已加密 由 Amazon 托管式密钥 加密
    未加密 由默认 KMS 密钥加密 由指定的 KMS 密钥加密**
    已加密 由默认 KMS 密钥加密
    已启用 未加密 由默认 KMS 密钥加密 不适用
    已加密 由默认 KMS 密钥加密
    未加密 由默认 KMS 密钥加密 由指定的 KMS 密钥加密**
    已加密 由默认 KMS 密钥加密

    ** 这是复制快照操作中所指定的 KMS 密钥。将为账户和区域使用此 KMS 密钥,而不是使用默认的 KMS 密钥。

    复制快照

    要复制快照,请使用以下方法之一。

    Console
    使用控制台复制快照
    1. 打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

    2. 在导航窗格中,选择快照

    3. 选择要复制的快照,然后选择 Actions(操作)、Copy snapshot(复制快照)。

    4. (可选)在 Description (描述)中,输入快照副本的简短描述。

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

    5. 对于 Destination Region(目标区域),选择要在其中创建快照副本的区域。

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

      如果源快照已加密,或者您的账户已启用默认加密,快照副本会自动加密,您无法更改其加密状态。

      如果源快照未加密,并且在默认情况下未为您的账户启用加密,则您可以选择启用或禁用加密。要加密快照副本,请在 Encryption(加密)中选择 Encrypt this snapshot(加密快照)。然后,在 KMS key(KMS 密钥)中,选择要用于对目标区域中的快照进行加密的 KMS 密钥。

    7. 选择复制快照

    Amazon CLI
    要使用 Amazon CLI 复制一个快照

    使用 copy-snapshot 命令。

    Tools for Windows PowerShell
    要使用 Tools for Windows PowerShell 复制一个快照

    使用 Copy-EC2Snapshot 命令。

    检查是否失败

    如果您在未获得加密密钥使用权限的情况下试图复制加密快照,则操作将失败,且系统不会提示。您刷新页面后,控制台才会显示错误状态。您还可以通过命令行检查快照的状态,如以下示例所示。

    aws ec2 describe-snapshots --snapshot-id snap-0123abcd

    如果复制因密钥权限不足而失败,您将看到以下消息:"StateMessage": "Given key ID is not accessible"

    在复制加密的快照时,您必须对默认 CMK 具有 DescribeKey 权限。显式拒绝这些权限将导致复制失败。有关管理 CMK 密钥的信息,请参阅 Amazon KMS身份验证和访问控制