删除AWS上的旧快照

时间:2018-01-28 14:44:17

标签: linux amazon-web-services amazon-ec2

我创建了一个AWS cloudwatch,每天都会创建自动EBS快照。所以每天cloudwatch都会创建一个昨天的快照。

现在我想创建一些删除旧快照的东西 我没有找到与之相关的任何内容,AWS支持也没有帮助我解决这个问题。

任何人都可以帮我解释如何自动删除aws ec2 EBS快照吗?

事实上,我想只保留最近7天的情况。备份快照,并自动删除所有其余的快照。

如何通过aws Lambda或cloudwatch实现它?

感谢!

2 个答案:

答案 0 :(得分:0)

如果您想继续使用当前使用的相同工具,即用于运行预定事件的CloudWatch,您还可以创建将触发lambda函数(或一组)的CloudWatch事件。 使用lambda,您可以编写代码来实现您选择的逻辑,例如: 使用AWS开发工具包列出所有+7天的快照,并删除它们。

有用的链接:

Schedule AWS Lambda Functions Using CloudWatch Events

AWS SDK for JS

AWS SDK for Python

这是一篇关于完成此事的非常好的博客文章 - Automating Amazon EBS Snapshot Management with AWS Step Functions and Amazon CloudWatch Events

答案 1 :(得分:0)

关于设置 EBS 快照管理的答案很好,但如果您一次性需要轻松摆脱一堆旧快照,您可以使用 AWS CLI 命令。

我有一项大型 AWS EC2 快照清理工作要做,需要删除数万个旧快照。这是我在 linux vbox 上使用的脚本。您可能想要更改的值在“TODO”中列出。

    Species_1 Species3
Site_1 0 1
Site_2 0 0
Site_3 6 7