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

从回收站恢复 AMI

回收站是一项数据恢复功能,支持您还原意外删除的 Amazon EBS 快照和 EBS 支持的 AMI。使用回收站时,如果资源被删除,回收站功能将在您指定的时间段内保留快照,而后永久删除资源。

在资源保留期到期之前,您可以随时从回收站还原资源。从回收站还原资源后,资源将从回收站中删除,您可以像使用账户中任何该类型的其他资源的一样使用此资源。如果保留期过期且资源未还原,则资源将从回收站中永久删除,并且不再可用于恢复。

回收站中的 AMI 不会产生任何额外费用。

有关更多信息,请参阅回收站

使用回收站中的 AMI 的权限

默认情况下,用户无权使用回收站中的 AMI。要允许用户使用这些资源,您必须创建 IAM policy,以授予使用特定资源和 API 操作的权限。创建策略后,必须向您的用户、组或角色添加权限。

要查看和恢复回收站中的 AMI,用户必须具有以下权限:

  • ec2:ListImagesInRecycleBin

  • ec2:RestoreImageFromRecycleBin

要管理回收站中 AMI 的标签,用户需要以下额外权限。

  • ec2:CreateTags

  • ec2:DeleteTags

要使用回收站控制台,用户需要 ec2:DescribeTags 权限。

以下是 IAM policy 示例。其中包括控制台用户的 ec2:DescribeTags 权限,以及用于管理标签的 ec2:CreateTagsec2:DeleteTags 权限。如果不需要上述权限,您可以从策略中将其删除。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:ListImagesInRecycleBin", "ec2:RestoreImageFromRecycleBin" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags", "ec2:DeleteTags", "ec2:DescribeTags" ], "Resource": "arn:aws:ec2:Region::image/*" } ] }

要提供访问权限,请为您的用户、组或角色添加权限:

有关使用回收站所需权限的更多信息,请参阅 使用回收站和保留规则的权限

查看回收站中的 AMI

如果 AMI 位于回收站中,则只能查看该 AMI 的有限信息,包括:

  • AMI 的名称、描述和唯一 ID。

  • AMI 被删除并放入回收站的日期和时间。

  • 保留期到期的日期和时间。此后,系统会永久删除 AMI。

您可以使用以下某种方法查看回收站中的 AMI。

Recycle Bin console
使用控制台查看回收站中的已删除 AMI
  1. 打开回收站控制台(地址:console.aws.amazon.com/rbin/home/)。

  2. 在导航窗格中,选择 Recycle Bin(回收站)。

  3. 该表格列出了当前在回收站中的所有资源。要查看特定 AMI 的详细信息,请在表格中选择所需 AMI,然后选择 Actions(操作)、View details(查看详细信息)。

Amazon CLI
使用 Amazon CLI 查看回收站中的已删除 AMI

使用 list-images-in-recycle-bin Amazon CLI 命令。要查看特定 AMI,请在命令中包括 --image-id 选项并指定要查看的 AMI 的 ID。在单个请求中,您最多可以指定 20 个 ID。

要查看回收站中的所有 AMI,请省略 --image-id 选项。如果没有为 --max-items 指定值,命令默认每页将返回 1000 个项目。有关更多信息,请参阅《Amazon EC2 API 参考》中的分页

$ aws ec2 list-images-in-recycle-bin --image-id ami_id

例如,以下命令提供回收站中 AMI ami-01234567890abcdef 的相关信息。

$ aws ec2 list-images-in-recycle-bin --image-id ami-01234567890abcdef

输出示例:

{ "Images": [ { "ImageId": "ami-0f740206c743d75df", "Name": "My AL2 AMI", "Description": "My Amazon Linux 2 AMI", "RecycleBinEnterTime": "2021-11-26T21:04:50+00:00", "RecycleBinExitTime": "2022-03-06T21:04:50+00:00" } ] }
重要

如果您收到以下错误,您可能需要更新 Amazon CLI 版本。有关更多信息,请参阅找不到命令错误

aws.exe: error: argument operation: Invalid choice, valid choices are: ...

从回收站还原 AMI

当 AMI 在回收站中时,您不能以任何方式使用它。要使用该 AMI,您必须先还原它。从回收站还原 AMI 时,该 AMI 立即可供使用,回收站会将其删除。还原 AMI 后,您可以像使用账户中任何其他 AMI 一样使用它。

您可以使用以下方法之一从回收站还原 AMI。

Recycle Bin console
使用控制台从回收站还原 AMI
  1. 打开回收站控制台(地址:console.aws.amazon.com/rbin/home/)。

  2. 在导航窗格中,选择 Recycle Bin(回收站)。

  3. 该表格列出了当前在回收站中的所有资源。选择要还原的 AMI,然后选择 Recover(恢复)。

  4. 系统提示时,选择 Recover(还原)。

Amazon CLI
使用 Amazon CLI 从回收站还原已删除的 AMI

使用 restore-image-from-recycle-bin Amazon CLI 命令。对于 --image-id,指定需还原 AMI 的 ID。

$ aws ec2 restore-image-from-recycle-bin --image-id ami_id

例如,以下命令将 AMI ami-01234567890abcdef 从回收站中还原。

$ aws ec2 restore-image-from-recycle-bin --image-id ami-01234567890abcdef

命令成功后,不返回任何输出。

重要

如果您收到以下错误,您可能需要更新 Amazon CLI 版本。有关更多信息,请参阅找不到命令错误

aws.exe: error: argument operation: Invalid choice, valid choices are: ...