我的一个 Amazon Simple Storage Service(Amazon S3)桶存储了数百万个对象。我想使用生命周期配置规则来清空桶,这样我就无需支付存储费用。
解决方案
**重要信息:**以下解决方案会永久删除您的 Amazon S3 桶中的所有数据。由于您无法恢复数据,因此请在删除前检查桶中的所有对象和数据。
要创建生命周期配置规则,使对象的当前版本过期并永久删除对象的先前版本,请完成以下步骤:
- 打开 Amazon S3 控制台。
- 从桶列表中,选择要清空的桶。
- 选择管理选项卡。
- 选择创建生命周期规则。
- 在生命周期规则名称中,输入规则名称。
- 在选择规则范围中,选择应用于桶中的所有对象。
- 选择我确认此规则将应用于桶中的所有对象。
- 对于生命周期规则操作,选择以下选项:
将对象的当前版本设为过期
永久删除非当前版本的对象
删除过期的对象删除标记或未完成的分段上传
- 在将对象的当前版本设为过期字段中,在创建对象以来的天数字段中输入 1。
- 在永久删除非当前版本的对象字段中,在对象变为非当前对象以来的天数字段中输入 1。
- 将**要保留的较新版本的数量(可选)**字段留空以删除所有版本。
- 选择删除未完成的分段上传,然后在天数字段中输入 1。
- 选择创建规则。
- 要创建第二条生命周期规则,请重复步骤 4-7。
- 选择以下选项: 删除过期的对象删除标记或未完成的分段上传。
- 选择删除过期的对象删除标记。
- 选择创建规则。
Amazon S3 每天运行一次生命周期规则。在 Amazon S3 首次运行规则后,所有符合过期条件的对象都将被标记为删除。您无需为标记为删除的对象付费。
Amazon S3 异步将对象版本设为过期并移除删除标记。规则可能需要运行几天才能清空桶。有关在 Amazon S3 中异步删除对象的更多信息,请参阅即将过期的对象。
您还可以使用 AWS 命令行界面(AWS CLI)来创建生命周期规则以清空您的 S3 桶。
JSON 示例:
{
"Rules": [{
"Expiration": {
"Days": 1
},
"ID": "FullDelete",
"Filter": {
"Prefix": ""
},
"Status": "Enabled",
"NoncurrentVersionExpiration": {
"NoncurrentDays": 1
},
"AbortIncompleteMultipartUpload": {
"DaysAfterInitiation": 1
}
},
{
"Expiration": {
"ExpiredObjectDeleteMarker": true
},
"ID": "DeleteMarkers",
"Filter": {
"Prefix": ""
},
"Status": "Enabled"
}
]
}
相关信息
移除过期对象删除标记
管理存储生命周期
如何删除 Amazon S3 对象和桶?
删除桶
在存储桶上设置生命周期配置