为存储分区设置对象生命周期政策

本页面介绍了如何为 Google Distributed Cloud (GDC) 气隙存储分区设置对象生命周期政策。

准备工作

项目命名空间用于管理 Management API 服务器中的存储桶资源。您必须拥有项目才能使用存储分区和对象。

您还必须拥有相应的存储桶权限才能执行以下操作。请参阅授予存储桶访问权限

在存储桶上设置对象生命周期政策

您可以使用对象生命周期政策自动管理存储分区中的对象。这有助于您在数据的整个生命周期内更高效地存储数据。生命周期配置是一组规则,用于根据某些匹配条件使一组对象过期。

您可以创建带有或不带对象生命周期政策的存储桶。创建存储桶后,您可以应用新的生命周期政策、更新现有生命周期政策或移除现有生命周期政策。

对于未启用版本控制的存储分区,过期意味着异步永久移除对象。

对于启用版本控制的存储分区,如果当前对象版本不是删除标记,则过期会将当前版本变为非当前版本,然后向当前版本添加删除标记。

如需设置和修改对象生命周期政策,请更新 Bucket.spec.bucketPolicy.lifecyclePolicy 字段。

CLI

以下是配置了不同对象生命周期政策的存储桶资源的一些示例:

apiVersion: object.gdc.goog/v1
kind: Bucket
metadata:
  name: BUCKET_NAME
  namespace: NAMESPACE_NAME
spec:
  description: "Bucket with lifecycle rule to expire all objects after 2000 days"
  storageClass: Standard
  bucketPolicy:
    lifecyclePolicy:
      enable: true
      lifecycleRules:
      - expiration:
          days: 2000
        id: expire-all-after-2000-days
        status: Enabled
----------
apiVersion: object.gdc.goog/v1
kind: Bucket
metadata:
  name: BUCKET_NAME
  namespace: NAMESPACE_NAME
spec:
  description: "Bucket with lifecycle rule to expire objects having name start with abc after 500 days"
  storageClass: Standard
  bucketPolicy:
    lifecyclePolicy:
      enable: true
      lifecycleRules:
      - expiration:
          days: 500
        id: expire-all-start-with-abc-after-500-days
        status: Enabled
        filter:
          prefixFilter: "abc"
----------
apiVersion: object.gdc.goog/v1
kind: Bucket
metadata:
  name: BUCKET_NAME
  namespace: NAMESPACE_NAME
spec:
  description: "Bucket with lifecycle rule to expire objects having specific tag after 300 days"
  storageClass: Standard
  bucketPolicy:
    lifecyclePolicy:
      enable: true
      lifecycleRules:
      - expiration:
          days: 300
        id: expire-all-objects-with-specific-tag-after-300-days
        status: Enabled
        filter:
          tagFilters:
          - key: testKey
            value: testValue

对生命周期政策进行的任何更新都适用于现有对象以及在更新后上传的对象。

如果存储桶还配置了对象锁定,则对象在保留天数结束之前会受到保护,不会过期。