【问题标题】:Snapshot/volume removal from EC2从 EC2 中删除快照/卷
【发布时间】:2011-02-02 02:16:22
【问题描述】:

我有一些脚本可以为我的 EBS 支持的 Windows 实例创建许多快照。您可以在某种程度上认为我正在构建一个图像树,我在其中分支并在一天中的不同时间创建快照。一个例子:

> Source Windows AMI -> Snapshot 1
>                             -> Snapshot 1.1
>                                         -> Snapshot 1.1.1
>                             -> Snapshot 1.2
>                    -> Snapshot 2
>                             -> Snapshot 2.1
>                             -> Snapshot 2.2
>                             ....

我现在想清理我的工作区。我的理解是快照是不同的。因此,在上面的示例中,项目“快照 1”将是一个完整的图像,而“快照 1.1”将是一个小得多的文件,仅包含二进制差异。我对此的理解正确吗?如果是这样,那么当我删除 'Snapshot 1.1' 时会发生什么 --- 亚马逊是否禁止我这样做,因为 'Snapshot 1.1.1' 是一个依赖项,还是它允许这样做并且事情在未来会中断?

【问题讨论】:

  • 初学者 - 感觉这对ServerFault来说可能是一个更好的问题

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


【解决方案1】:

根据您的描述,快照并没有真正存储为树层次结构。相反,只有一个“块”桶,快照标识符是一个指针,指向需要哪些块才能从基础映像重建映像。拍摄更多快照,您只会生成更多“差异”块和指向这些块的新快照标识符。

我可能对这个断言有误,但如果您从 EC2 配置文件中删除中间快照(即示例中的 v2.0),您将不会节省任何磁盘空间(+钱)。这是因为构建 v2.1、v2.2 仍然需要 v2.0 块...因此,如果您想删除快照以节省资金,那么您确实需要删除那些作为概念叶子存在的那些快照树。

顺便说一句,快照树的确切表示是它们在此 EC2 管理工具中的表示方式:http://LabSlice.com。如果您正在为实验室类型的目的构建快照,则可能值得一看。 (免责声明:我在那里工作)。

【讨论】:

    【解决方案2】:

    'Snapshot 1.1' 将是一个小得多的文件,仅包含二进制差异。我对此的理解正确吗?

    是的

    '如果是这样,那么当我删除'Snapshot 1.1' 时会发生什么 --- 亚马逊是否禁止我这样做,因为'Snapshot 1.1.1' 是一个依赖项,还是它允许这样做并且事情只是中断了未来?

    好问题,但你需要给亚马逊多一点信任 :) 如果您删除快照 1.1,则只会删除未被任何其他快照引用的块,这意味着快照 1.1.1 可以正常工作。

    可以在here找到一个很好的解释(以及简洁的图表)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-24
      • 2017-07-20
      • 1970-01-01
      • 2015-05-05
      • 2016-08-30
      • 1970-01-01
      • 2011-07-30
      • 1970-01-01
      相关资源
      最近更新 更多