【问题标题】:Lifecycle policy on S3 bucketS3 存储桶的生命周期策略
【发布时间】:2015-06-10 10:17:06
【问题描述】:

我有一个 S3 存储桶,我在其上配置了一个生命周期策略,该策略说在 1 天后归档存储桶中的所有对象(因为我想暂时将文件保留在那里,但如果没有问题,那么归档它们就可以了,不必为 S3 存储付费)

但是我注意到该存储桶中有一些文件是在 2 月创建的 ..

所以 .. 我是否认为如果您选择“存档”作为生命周期选项,这意味着 “复制到冰川然后从 S3 中删除”?在这种情况下,从 2 月份留下的这期文件将是一个错误 - 因为它们没有出现过?

只有我看到还有另一个选项 - '存档然后删除' - 但我认为这意味着 “copy-to-glacier-and-then-delete-from-glacier” - 我不想。

还有其他人在使用 S3 -> Glacier 时遇到过问题吗?

【问题讨论】:

  • 我认为您对“存档”和“存档然后删除”之间的区别是正确的。后者复制到 Glacier,从 S3 中删除,并将在将来的某个指定点从 Glacier 中删除对象。这就是您如何实现“我希望文件在 S3 中可用 60 天,然后在 Glacier 中存档 120 天,然后在此之后删除”。至于为什么您仍然拥有 2 月份的对象,除非它们与现有的生命周期策略不匹配,否则它可能是 S3 生命周期错误。可能值得提出支持案例并指出哪些对象和策略存在问题。
  • @jarmod 谢谢 - 我认为这两项政策就是这种情况。看起来这不是一个生命周期错误,看看迈克尔的答案,这很好

标签: amazon-web-services amazon-s3


【解决方案1】:

你描述的听起来很正常。检查对象的存储类。

理解 S3/Glacier 集成的正确方法是 S3 是 Glacier 的“客户”——而不是您——而 Glacier 是 S3 的后端存储提供商。您与 S3 的关系仍然存在(如果您在控制台中进入 Glacier,如果 S3 将其放入 Glacier,则您的东西在那里不可见)。

当 S3 将对象存档到 Glacier 时,该对象在逻辑上仍然在存储桶中,并且仍然是 S3 对象,并且在 S3 控制台中可见,但无法从 S3 下载,因为 S3 已将其迁移到不同的后备存储。

您应该在控制台中看到的区别是对象将具有Glacier 的“存储类”,而不是通常的StandardReduced Redundancy。它们不会从那里消失。

要稍后访问该对象,您要求 S3 从 Glacier 启动恢复,S3 会这样做...但此时该对象仍然在 Glacier 中,S3 持有一个临时副本,它会在几天后再次清除。

请注意,如果您不打算将这些文件保留 3 个月,那么您的保存尝试可能会有点偏离目标,因为每当您从 Glacier 中删除一个对象时,您都需要为这三个月的剩余时间付费,如果该物体在 Glacier 中的时间比这更短。

【讨论】:

  • 啊哈!我现在明白了。谢谢 - 这解释了它。我认为 Skynet/AWS 不会有问题 :)
猜你喜欢
  • 1970-01-01
  • 2023-01-02
  • 2023-03-17
  • 2022-01-23
  • 2021-06-29
  • 2019-12-13
  • 2021-12-07
  • 2020-04-12
  • 2021-06-14
相关资源
最近更新 更多