亚马逊AWS官方博客

新增 – EBS 快照的回收站

创建 EBS 快照很容易,手动删除快照或使用数据生命周期管理器根据企业的保留模式自动删除快照也很容易。事实证明,有时候删除快照有点太容易了,而且意图良好的清理工作或不规则的脚本有时可能会有点过分!

新回收站
为了让您更好地控制删除过程,我们正在启动适用于 EBS 快照的回收站。稍后您将看到,您现在可以设置规则来保留已删除的快照,以便在意外删除后可以恢复快照。您可以将此模式视为两级模式,由各个 AWS 用户负责初始删除,然后由指定的“回收站管理员”(由 IAM 角色指定)管理保留和恢复。

规则可以应用于所有快照,也可以应用于包含一组指定标签/值对的快照。每个规则都指定保留期(介于一天到一年之间),在此期限之后,将永久删除快照。

让我们来回收吧!
我打开 Recycle Bin Console(回收站控制台),选择感兴趣的区域,然后单击Create(创建)或 retention rule(保留规则)开始:

我调用第一条规则 KeepALL,并将其设置为将所有已删除的 EBS 快照保留 4 天:

我在规则中添加标签 (User),然后单击Create retention rule(创建保留规则):

由于选中了 Apply to all resources(应用于所有资源),因此这是在没有指定一个或多个标签的适用规则时应用的一般规则。

然后我创建第二条规则 (KeepDev),将标记为开发模式的快照仅保留一天:

如果基于标签的两个不同规则匹配同一资源,则应用保留期较长的规则。

以下是我的保留规则:

这是我的 EBS 快照。正如您所见,前三个被标记为开发模式

为了每月节省几美分,我冲动地将这些快照全部删除:

它们消失了:

当天晚些时候,我的开发团队成员惊慌地告诉我,他们迫切需要开发服务器代码的最新快照。我打开回收站,然后找到快照 (DevServer_2021_10_6):

我选择快照,然后单击 Recover(恢复):

然后我会确认我的意图:

快照又可用了:

与往常一样,删除快照时会禁用 Fast Snapshot Restore(快速快照还原)。通过此次启动,还原快照后,它将保持禁用状态。

所有这些功能(创建规则、在回收站中列出资源以及还原它们)也可以通过 CLI 和 Recycle Bin API(回收站 API)获得。

注意事项
以下是关于新回收站的注意事项:

IAM 支持 – 如前所述,您可以使用 AWS Identity and Access Management (IAM) 授予对此功能的访问权限,并应考虑创建一个称为回收站管理员的授权用户。

规则更改 – 您可以随时更改保留规则,但请注意,删除快照时会对规则进行评估(并设置保留期)。删除项目后更改规则不会改变项目的保留期。

定价 – 回收站中的资源按常规价格收费,但请注意,创建具有较长保留期的规则可能会增加您的 AWS 费用。在相关说明中,请确保保留已删除的快照不会违反企业的数据留存策略。删除或恢复资源不收取任何费用。

在回收站中 – 回收站中的资源是不可改变的。如果恢复了资源,其所有现有元数据(标签等)也将完整地恢复。

回收 – 一旦回收站中的资源结束其保留期时,我们将尽最大努力回收所有数据!

Jeff