最近更新时间:2025-06-20 17:31:03
lifecycle命令用于添加或修改生命周期规则、获取生命周期规则、删除生命周期规则。
配置生命周期规则后,KS3会定期将对象(Object)转储为低频、归档存储类型,或将过期的Object和碎片删除,从而节省存储费用。以下介绍如何通过lifecycle命令添加、修改、查询、删除生命周期规则配置。
以下示例均以Linux为例。
添加或修改生命周期规则步骤如下所示:
1. 创建本地文件,并根据使用场景在该文件中写入生命周期规则。
2. KS3Util先从本地文件中读取生命周期配置,然后根据读取到生命周期配置为指定桶添加生命周期规则。
./ks3util lifecycle --method put ks3://bucketname local_xml_file参数 | 说明 |
|---|---|
bucketname | 配置Lifecycle规则的桶名称。 |
local_xml_file | 配置Lifecycle规则的本地文件名称,例如 |
1. 除上述的功能参数,关于Util支持的通用选项参数,详情请参考通用选项&过滤规则文档。
2. 设置生命周期规则需具备ks3:PutBucketLifecycle权限。
a. 在本地创建名为localfile.xml的文件,并根据使用场景写入不同的Lifecycle规则。
场景一:指定Lifecycle规则应用于目标桶samplebucket,指示与前缀test/匹配的Object距其最后修改时间超过30天后转换为ARCHIVE存储类型。
<?xml version="1.0" encoding="UTF-8"?>
<LifecycleConfiguration>
<Rule>
<ID>test-rule1</ID>
<Filter>
<Prefix>test/</Prefix>
</Filter>
<Status>Enabled</Status>
<Transition>
<Days>30</Days>
<StorageClass>ARCHIVE</StorageClass>
</Transition>
</Rule>
</LifecycleConfiguration>场景二:指定Lifecycle规则应用于目标桶samplebucket,指示与前缀test/匹配的Object最后更新 365 天后,文件删除。
<?xml version="1.0" encoding="UTF-8"?>
<LifecycleConfiguration>
<Rule>
<ID>test-rule2</ID>
<Filter>
<Prefix>test/</Prefix>
</Filter>
<Status>Enabled</Status>
<Expiration>
<Days>365</Days>
</Expiration>
</Rule>
</LifecycleConfiguration>指定Lifecycle规则应用于目标桶samplebucket,指示与前缀test/匹配的Object在分块上传任务初始化10天后,删除未完成的分块上传任务。
<?xml version="1.0" encoding="UTF-8"?>
<LifecycleConfiguration>
<Rule>
<ID>test-rule3</ID>
<Filter>
<Prefix>test/</Prefix>
</Filter>
<Status>Enabled</Status>
<AbortIncompleteMultipartUpload>
<DaysAfterInitiation>10</DaysAfterInitiation>
</AbortIncompleteMultipartUpload>
</Rule>
</LifecycleConfiguration>b. 为桶添加Lifecycle规则。
为samplebucket添加Lifecycle规则。
./ks3util lifecycle --method put ks3://samplebucket localfile.xml以下输出结果表明已成功添加Lifecycle规则。
0.299514(s) elapsed./ks3util lifecycle --method get ks3://bucketname [local_xml_file]参数 | 说明 |
|---|---|
bucketname | 获取Lifecycle规则配置的目标桶名称。 |
local_xml_file | 用于存放Lifecycle规则配置的本地文件名称,例如 |
1. 除上述的功能参数,关于Util支持的通用选项参数,详情请参考通用选项&过滤规则文档。
2. 获取生命周期规则需具备ks3:GetBucketLifecycle权限。
获取samplebucket的Lifecycle规则。
./ks3util lifecycle --method get ks3://samplebucket localfile.xml以下输出结果表明已成功获取Lifecycle规则配置,并将其写入本地localfile.xml文件。
0.299514(s) elapsed./ks3util lifecycle --method delete ks3://bucketname 参数 | 说明 |
|---|---|
bucketname | 删除Lifecycle规则配置的目标桶名称。 |
1. 除上述的功能参数,关于Util支持的通用选项参数,详情请参考通用选项&过滤规则文档。
2. 删除生命周期规则需具备ks3:DeleteBucketLifecycle权限。
删除samplebucket的Lifecycle规则。
./ks3util lifecycle --method delete ks3://samplebucket以下输出结果表明已成功删除samplebucket的Lifecycle规则配置。
0.299514(s) elapsed纯净模式
