问题标签 [s3-lifecycle-policy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 使用 AWS CDK 实施生命周期后无法删除 S3 存储桶
我是 aws cdk 的初学者,我已经使用 AWS CDK 实施了 S3 生命周期管理,以在创建存储桶 10 天后删除存储桶(包括文件)。
cdk实现如下:
但是 s3 对象在 10 天后没有被删除。如附图所示,它即将过期。我们没有在 cdk api ( https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-中设置“删除过期的删除标记或不完整的分段上传”或其他选项的选项) s3.LifecycleRule.html#transitions)。
您能否在这个主题上帮助我,如何使用 aws cdk 删除 s3 对象。
amazon-web-services - S3生命周期配置:过期
我有一个版本化的 S3 存储桶。在存储桶下,我有一个文件,该文件于 2021 年 3 月 1 日 14:06:24 上传。现在我在 2021 年 6 月 16 日创建了一个生命周期规则。以下是规则:
当我应用此规则时,Amazon S3 添加了一个删除标记,并且对于 2021 年 3 月上传的一些文件,当前版本保留为先前版本。
任何人都可以解释为什么添加删除标记。我已指定 365 天后到期。
amazon-s3 - 删除具有任意标签值的 S3 对象
我天真地用一个公共键标记了 S3 对象,但是任意值(UUID
每批一个),相信它会“很容易”返回并删除具有指定标记的每个对象。
到目前为止,我的测试表明,如果我指定一个基于仅键(无值)过滤的生命周期规则,那么它仅匹配也具有键且没有值的对象,而不是匹配具有该键的所有对象而不考虑值.
我目前正在等待午夜 UTC,以确保问题不在 Terraform 和 Amazon S3 之间。但是,如果有一种已知的指定方式apply rule to all objects with tag-key K
,那将非常有帮助;迄今为止我发现的文档还不是很清楚。
为了完整起见,需要一点地形:
amazon-web-services - 如何使用 AWS 生命周期管理策略仅将大于 100MB 的对象从 S3 Standard 转换到 AWS Glacier?
我在 S3 标准存储桶中有 50TB 的数据。
我想使用 S3 生命周期策略将大于 100MB 和超过 30 天的对象转换到 AWS Glacier。
如何仅转换大小超过 100MB 的对象?
amazon-web-services - 无法使用无服务器将生命周期策略添加到 s3 存储桶
我想向我现有的 s3 存储桶(使用无服务器)添加一个生命周期策略,该策略会删除我的 s3 存储桶中的所有文件夹。我已经在 serverless.yml 中编写了代码。当我尝试部署我的代码时,我得到 -
其他堆栈资源更新失败 (UPDATE_ROLLBACK_COMPLETE)。
所以我检查了 cloudformation 堆栈,我收到消息说我的存储桶已经存在 -
my_bucket_name 已存在
资源更新取消
未能创建以下资源:[my_bucket_name]
我不知道为什么我会得到这个,我的 s3_bucket 代码看起来像这样 -
这不是我的全部 s3 代码,而是本文所需的一小部分。在添加生命周期配置之前,一切正常。任何帮助将不胜感激,谢谢
amazon-web-services - 使用 boto3 将多个 S3 生命周期规则添加到 S3 存储桶
我想使用 lambda 和 boto3 向 S3 存储桶添加多个生命周期规则。但是,使用 boto3,它似乎只允许您添加 1 个生命周期规则,这也会覆盖已经存在的规则。
例如,执行以下操作只会覆盖我拥有的任何预先存在的规则以及新编写的规则,并且只保留列表中的最后一个:
当然,使用 AWS 控制台可以在一个存储桶上添加多个单独的 S3 生命周期配置。
与 类似put_bucket_lifecycle_configuration
,我也尝试过put_bucket_lifecycle
,这给了我相同的结果。
有什么方法可以使用 boto3 在存储桶上添加多个 S3 生命周期配置?我错过了一些明显的东西吗?
任何帮助表示赞赏,并提前感谢!
amazon-web-services - 如何通过生命周期规则删除 S3 存储桶中对象的版本
我已经设置了一个由 2 个主要路径组成的 S3 存储桶:
- 私人的/
- 上市/
对于 private/ 文件夹,我希望设置以下规则:
- 所有私有/文件的版本都将发送到 S3 Glacier Instant Retrieval* 并保存至少 10 年。
对于 public/ 文件夹,以下规则:
- 所有公开/文件的版本都发送到 S3 Glacier Instant Retrieval* 并保留至少 6 个月。
我目前已经为测试 S3 存储桶上的 public/ 文件夹创建了生命周期规则,并且我尝试将到期日期设置为 1 天,以查看它是否有效。然而事实并非如此。这是我创建的生命周期规则:
所以基本上我选择了:
- 选中“在存储类之间移动非当前版本的对象”,在这一项中,我选择了 Glacier Instant Retrieval 选项,对象变为非当前版本后 0 天。并将“要保留的较新版本的数量”字段留空。
对于这一点,当我浏览到我的 S3 存储桶并单击设置了删除标记的版本时,它会显示“存储类:标准”。为什么这不在 Glacier Instant Retrieval 存储中?
- 选中“永久删除对象的非当前版本”,我在“对象变为非当前的天数”中选择了 1。
对于我正在查看版本的对象,它们都是 2 天前的,但它们仍然都在那里。他们为什么不被删除?
amazon-s3 - 如何通过 Cloudformation 模板将非当前版本保存在嵌套文件夹中?
我有一个结构如下的存储桶:
- 根
- 资源
- 处理
- 形式
我希望非当前版本在除表单目录之外的所有内容中都过期。
这会起作用吗,还是我需要为源、已处理和表单创建单独的规则?