3.3.15. S3 存储桶生命周期


您可以使用存储桶生命周期配置来管理对象,以便在其生命周期内有效存储它们。Ceph 对象网关中的 S3 API 支持 AWS 存储桶生命周期操作的子集:

  • Expiration: 定义存储桶内对象的寿命。对象应实时或过期日期的天数,该日期指向 Ceph 对象网关将删除对象。如果存储桶没有启用版本控制,Ceph 对象网关将永久删除对象。如果 bucket 启用版本控制,Ceph 对象网关为当前版本创建删除标记,然后删除当前版本。
  • NoncurrentVersionExpiration :这定义了存储桶中非当前对象版本的期限。要使用此功能,您必须启用存储桶版本控制。它取非当前对象应处于活动状态的天数,此时 Ceph 对象网关将删除非当前对象。
  • NewerNoncurrentVersions :指定要保留的非当前对象版本数量。您可以指定要保留的最多 100 个非当前版本。如果要保留的指定数量超过 100,则删除额外的非当前版本。
  • AbortIncompleteMultipartUpload :这定义了未完成的多部分上传在中止前的天数。
  • BlockPublicPolicy reject :此操作用于公共访问块。如果指定的策略(用于访问点或底层存储桶)允许公共访问,它将调用通过访问点进行的 PUT 访问策略和 PUT bucket 策略。Amazon S3 Block Public Access 功能包括在 Red Hat Ceph Storage 5.x/ Ceph Pacific 版本中。它提供访问点、存储桶和帐户的设置,以帮助您管理 Amazon S3 资源的公共访问权限。默认情况下,新 bucket、访问点和对象不允许公共访问。但是,您可以修改存储桶策略、访问点策略或对象权限来允许公共访问。S3 Block Public Access 设置覆盖这些策略和权限,以便您可以限制这些资源的公共访问权限。

生命周期配置包含使用 <Rule> 元素的一个或多个规则。

示例

<LifecycleConfiguration>
    <Rule>
      <Prefix/>
      <Status>Enabled</Status>
      <Expiration>
        <Days>10</Days>
      </Expiration>
    </Rule>
</LifecycleConfiguration>

生命周期规则可应用于存储桶中所有或某个对象子集,具体取决于您在生命周期规则中指定的 & lt;Filter > 元素。您可以使用以下方法指定过滤器:

  • 密钥前缀
  • 对象标签
  • 密钥前缀和一个或多个对象标签

密钥前缀

您可以根据密钥名称前缀,将生命周期规则应用到对象的子集。例如,指定 <keypre/> 将应用到以 keypre/ 开头的对象:

<LifecycleConfiguration>
    <Rule>
        <Status>Enabled</Status>
        <Filter>
           <Prefix>keypre/</Prefix>
        </Filter>
    </Rule>
</LifecycleConfiguration>

您还可以将不同的生命周期规则应用到具有不同密钥前缀的对象:

<LifecycleConfiguration>
    <Rule>
        <Status>Enabled</Status>
        <Filter>
           <Prefix>keypre/</Prefix>
        </Filter>
    </Rule>
    <Rule>
        <Status>Enabled</Status>
        <Filter>
           <Prefix>mypre/</Prefix>
        </Filter>
    </Rule>
</LifecycleConfiguration>

对象标签

您可以使用 <Key><Value> 元素将生命周期规则应用到带有特定标签的对象:

<LifecycleConfiguration>
    <Rule>
        <Status>Enabled</Status>
        <Filter>
           <Tag>
              <Key>key</Key>
              <Value>value</Value>
           </Tag>
        </Filter>
    </Rule>
</LifecycleConfiguration>

前缀和一个或多个标签

在生命周期规则中,您可以根据密钥前缀和一个或多个标签指定过滤器。它们必须包括在 <And> 项中。过滤器只能有一个前缀,以及零个或多个标签:

<LifecycleConfiguration>
    <Rule>
        <Status>Enabled</Status>
        <Filter>
          <And>
             <Prefix>key-prefix</Prefix>
             <Tag>
                <Key>key1</Key>
                <Value>value1</Value>
             </Tag>
             <Tag>
                <Key>key2</Key>
                <Value>value2</Value>
             </Tag>
              ...
          </And>
        </Filter>
    </Rule>
</LifecycleConfiguration>
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部