自动对象过期
本页上的每个过程都会创建一个新的对象生命周期管理规则,用于使 MinIO 存储桶中的对象过期。此过程支持诸如在一定时间段或日历日期后删除"旧"对象之类的使用场景。
需求
安装和配置mc
此过程使用mc用于在 MinIO 集群上执行操作。
安装mc在能够同时访问源集群和目标集群网络的机器上。请参阅mc 安装快速入门有关下载和安装的说明mc.
使用mc alias set命令用于为源 MinIO 集群和目标 S3 兼容服务创建别名。创建别名需要指定源集群和目标集群上用户的访问密钥。指定的用户必须具有权限用于配置和应用过期操作。
所需权限
MinIO 需要以下权限,这些权限应限定在您正在创建生命周期管理规则的一个或多个存储桶范围内。
MinIO 在您为对象转换生命周期管理规则创建远程层时,还需要集群上的以下管理权限:
例如,以下策略提供了在集群中任何存储桶上配置对象转换生命周期管理规则的权限:
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"admin:SetTier",
"admin:ListTier"
],
"Effect": "Allow",
"Sid": "EnableRemoteTierManagement"
},
{
"Action": [
"s3:PutLifecycleConfiguration",
"s3:GetLifecycleConfiguration"
],
"Resource": [
"arn:aws:s3:::*"
],
"Effect": "Allow",
"Sid": "EnableLifecycleManagementRules"
}
]
}
在指定天数后使对象过期
使用mc ilm rule addwith--expire-days使存储桶内容在对象创建指定天数后过期:
mc ilm rule add ALIAS/PATH --expire-days "DAYS"
Expire Versioned Objects
使用mc ilm rule add对于过期的非当前对象版本和对象删除标记:
要使非当前对象版本在特定天数后过期, 请包含
--noncurrent-expire-days.要使没有剩余版本的对象过期删除标记,
--expire-delete-marker.
mc ilm rule add ALIAS/PATH \
--noncurrent-expire-days NONCURRENT_DAYS \
--expire-delete-marker
要使对象的所有版本过期,请包含
--expire-all-object-versions此过期设置仅适用于没有设置DeleteMarker作为最新或当前版本。mc ilm rule add ALIAS/PATH \ --expire-all-object-versions
替换
PATH使用指向 S3 兼容主机上存储桶的路径。替换
NONCURRENT_DAYS在指定天数后使非当前对象版本过期。例如,指定30d在版本变为非当前版本至少30天后使其过期。