オブジェクトの最終変更時刻または最終アクセス時刻に基づいてライフサイクルルールを作成し、指定されたストレージクラスにオブジェクトを定期的に移動したり、コスト最適化のために期限切れのオブジェクトや部品を定期的に削除したりします。
使用上の注意
バケットのライフサイクルルールを設定するには、
oss:PutBucketLifecycle
権限が必要です。 詳細については、「RAMユーザーへのカスタムポリシーのアタッチ」をご参照ください。バケットにライフサイクルルールが設定されていない場合、コマンドはバケットのライフサイクルルールを作成します。 バケットに既存のライフサイクルルールがある場合、コマンドは既存のライフサイクルルールを新しいルール設定で上書きします。
ライフサイクルルールを使用して、不完全なマルチパートアップロードタスクでアップロードされるオブジェクトとパーツの有効期限を指定できます。
コマンド構文
ossutil api put-bucket-lifecycle -- bucket value -- lifecycle-configuration value [flags]
パラメーター | データ型 | 説明 |
-- bucket | String | バケットの名前です。 |
-- lifecycle-configuration | String | ライフサイクルルールのコンテナー。 ライフサイクル設定コンテナには、最大1,000個のルールを含めることができます。 |
put-bucket-lifecycleコマンドは、PutBucketLifecycle操作に相当します。 API操作の詳細については、「PutBucketLifecycle」をご参照ください。
-- ライフサイクル設定
-- lifecycle-configurationオプションは、XMLおよびJSON形式をサポートします。
XML 形式:
<LifecycleConfiguration> <Rule> <NoncurrentVersionExpiration> <NoncurrentDays>integer</NoncurrentDays> </NoncurrentVersionExpiration> <NoncurrentVersionTransition> <NoncurrentDays>integer</NoncurrentDays> <StorageClass>string</StorageClass> <IsAccessTime>boolean</IsAccessTime> <ReturnToStdWhenVisit>boolean</ReturnToStdWhenVisit> <AllowSmallFile>boolean</AllowSmallFile> </NoncurrentVersionTransition> ... <ID>string</ID> <Prefix>string</Prefix> <Status>string</Status> <Expiration> <ExpiredObjectDeleteMarker>boolean</ExpiredObjectDeleteMarker> <CreatedBeforeDate>string</CreatedBeforeDate> <Days>integer</Days> </Expiration> <Transition> <IsAccessTime>boolean</IsAccessTime> <ReturnToStdWhenVisit>boolean</ReturnToStdWhenVisit> <AllowSmallFile>boolean</AllowSmallFile> <CreatedBeforeDate>string</CreatedBeforeDate> <Days>integer</Days> <StorageClass>string</StorageClass> </Transition> ... <AbortMultipartUpload> <CreatedBeforeDate>string</CreatedBeforeDate> <Days>integer</Days> </AbortMultipartUpload> <Tag> <Key>string</Key> <Value>string</Value> </Tag> ... <Filter> <Not> <Prefix>string</Prefix> <Tag> <Key>string</Key> <Value>string</Value> </Tag> </Not> </Filter> </Rule> ... </LifecycleConfiguration>
JSON 形式:
{ "Rule": [ { "Tag": [ { "Key": "string", "Value": "string" }, ... ], "Filter": { "Not": { "Prefix": "string", "Tag": { "Key": "string", "Value": "string" } } }, "Transition": [ { "CreatedBeforeDate": "string", "Days": integer, "StorageClass": "string", "IsAccessTime": boolean, "ReturnToStdWhenVisit": boolean, "AllowSmallFile": boolean }, ... ], "AbortMultipartUpload": { "CreatedBeforeDate": "string", "Days": integer }, "NoncurrentVersionExpiration": { "NoncurrentDays": integer }, "NoncurrentVersionTransition": [ { "NoncurrentDays": integer, "StorageClass": "string", "IsAccessTime": boolean, "ReturnToStdWhenVisit": boolean, "AllowSmallFile": boolean }, ... ], "ID": "string", "Prefix": "string", "Status": "string", "Expiration": { "CreatedBeforeDate": "string", "Days": integer, "ExpiredObjectDeleteMarker": boolean } }, ... ] }
詳細については、「コマンドラインオプション」をご参照ください。
例
examplebucketバケットのライフサイクルルールを作成します。
XML構成ファイルの使用 (この例ではlifecycle-configuration.xml)
<?xml version="1.0" encoding="UTF-8"?> <LifecycleConfiguration> <Rule> <ID>rule1</ID> <Prefix>tmp/</Prefix> <Status>Enabled</Status> <Expiration> <Days>10</Days> </Expiration> <Transition> <Days>5</Days> <StorageClass>IA</StorageClass> </Transition> <AbortMultipartUpload> <Days>10</Days> </AbortMultipartUpload> </Rule> </LifecycleConfiguration>
サンプルコマンド:
ossutil api put-bucket-lifecycle --bucket examplebucket --lifecycle-configuration file://lifecycle-configuration.xml
JSON設定ファイルの使用 (この例のlifecycle-configuration.json)
{ "Rule": { "ID": "rule1", "Prefix": "tmp/", "Status": "Enabled", "Expiration": { "Days": "10" }, "Transition": { "Days": "5", "StorageClass": "IA" }, "AbortMultipartUpload": { "Days": "10" } } }
サンプルコマンド:
ossutil api put-bucket-lifecycle --bucket examplebucket --lifecycle-configuration file://lifecycle-configuration.json
コマンドラインでJSONパラメーターを使用する
ossutil api put-bucket-lifecycle --bucket examplebucket --lifecycle-configuration "{\"Rule\":{\"ID\":\"rule1\",\"Prefix\":\"tmp/\",\"Status\":\"Enabled\",\"Expiration\":{\"Days\":\"10\"},\"Transition\":{\"Days\":\"5\",\"StorageClass\":\"IA\"},\"AbortMultipartUpload\":{\"Days\":\"10\"}}}"