首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Minio中设置BucketLifeCycleRule?

如何在Minio中设置BucketLifeCycleRule?
EN

Stack Overflow用户
提问于 2022-03-10 21:02:55
回答 1查看 569关注 0票数 1

在创建了一个Minio桶之后,我设置了存储桶的生命周期规则。LifeCycleRule使用仅设置为1天的过期变量。在通过minio客户机(mc) mc ilm ls mycloud/bucketName检查桶的状态时,我注意到生命周期规则已经成功地应用到指定的桶上。然而,在一天后重新检查Minio时,水桶仍然在那里。为了正确删除迷你桶,我还需要添加到LifeCycleRule中的其他东西吗?

注意,我一直使用Minio客户端API作为参考。

代码语言:javascript
运行
复制
fun createBucket(bucketName: String){
   client.makeBucket(MakeBucketArgs.builder().bucket(bucketName).build())
   setBucketLifeCycle(bucketName)
}

private fun setBucketLifeCycle(bucketName: String){

   // Setting the expiration for one day.
   val expiration = Expiration(null as ZonedDateTime?, 1, null)

   var lifeCycleRuleList = mutableListOf<LifecycleRule>()

   val lifecycleRuleExpiry = LifecycleRule(
     Status.ENABLED,
     null,
     expiration,
     RuleFilter("expiry/logs"),
     "rule 1",
     null,
     null,
     null)

   lifecycleRuleList.add(lifecycleRuleExpiry)
   var lifecycleConfig = LifecycleConfiguration(lifecycleRuleList)
 
   // Applies the lifecycleConfig on to target bucket.
   client.setBucketLifecycle(SetBucketLifecycleArgs.buider()
     .bucket(bucketName).config(lifecycleConfig).build())
}

问题

  • 我的LifeCycleRule上还有更多的遗漏吗?
  • 会不会因为桶中有对象而自动删除桶呢?
    • 我在minio客户机上确实注意到,当存储桶上有项时,mc rb mycloud/bucketName将无法删除存储桶,但是强制使用mc rb -force mycloud/bucketName会成功地将其删除。有办法在生命周期参数上喷出“强制”吗?
EN

回答 1

Stack Overflow用户

发布于 2022-03-16 23:38:21

生命周期规则适用于桶中的对象,而不是桶本身。

S3生命周期配置是一组规则,用于定义亚马逊S3应用于一组对象的操作。

(参考文献:https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html)

因此,当桶中的所有对象通过ILM策略过期时,它都不会被删除(甚至)。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71430786

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档