通过标头进行 Amazon S3 对象生命周期管理
Posted
技术标签:
【中文标题】通过标头进行 Amazon S3 对象生命周期管理【英文标题】:Amazon S3 Object Lifecycle Management via header 【发布时间】:2017-11-21 19:27:53 【问题描述】:我一直在寻找这个问题的答案很长一段时间,但显然我错过了一些东西。
我大量使用 s3cmd 通过脚本自动将文档上传到 AWS S3。可以在 s3cmd 中使用的参数之一是--add-header
,我假设它允许添加生命周期规则。
我的目标是添加此参数并为上传指定 +X(其中 X 是天)。如果出现... --add-header=...1 ...
,生命周期规则将在 24 小时后删除此文件。
我知道这可以通过控制台轻松完成,但我希望对单个文件/脚本进行更详细的控制。
我已经阅读了可以通过 s3cmd 传递给 S3 的参数,但是我不知如何将所有这些参数放在一起以获得预期的结果。
非常感谢您的任何帮助或帮助!
【问题讨论】:
【参考方案1】:S3 API 本身不支持任何在对象级别触发生命周期管理的请求标头。
s3cmd 的 --add-header
选项可以添加 S3 可以理解的标头,例如 Content-Type
,但没有可以使用任何工具发送的生命周期标头。
你可能会这样想:
如果您对已计划到期的对象发出
GET
或HEAD
请求,则响应将包含一个x-amz-expiration
标头,其中包含此到期日期和相应的规则 IDhttps://aws.amazon.com/blogs/aws/amazon-s3-object-expiration/
这是一个响应头,并且是只读的。
【讨论】:
以上是关于通过标头进行 Amazon S3 对象生命周期管理的主要内容,如果未能解决你的问题,请参考以下文章
我可以一次为 Amazon S3 存储桶中的所有对象设置 expires 标头吗?
关于ceph rgw storage_class 的使用研究(amazon S3 智能分层 )