ONTAP 9.13

to English version

バケット ライフサイクル管理ルールの作成

ONTAP 9.13.1以降では、S3バケット内のオブジェクトライフサイクルを管理するライフサイクル管理ルールを作成できます。バケット内の特定のオブジェクトの削除ルールを定義し、これらのルールを使用してバケットオブジェクトを期限切れにすることができます。これにより、保持要件を満たし、S3オブジェクトストレージ全体を効率的に管理できます。

バケットオブジェクトに対してオブジェクトロックが有効になっている場合、オブジェクトの有効期限のライフサイクル管理ルールはロックされたオブジェクトには適用されません。オブジェクトロックの詳細については、「バケットの作成」 を参照してください。

開始する前に

S3サーバーとバケットを含むS3対応のSVMがすでに存在している必要があります。詳細については、「S3用SVMの作成」を参照してください。

タスク概要

ライフサイクル管理ルールを作成するときに、バケットオブジェクトに次の削除アクションを適用できます。

  • 現在のバージョンの削除
    このアクションは、ルールによって識別されたオブジェクトを期限切れにします。バケットでバージョニングが有効になっている場合、S3はすべての期限切れオブジェクトを使用不可にします。バージョン管理が有効になっていない場合、このルールはオブジェクトを完全に削除します。CLIアクションは Expiration です。

  • 非最新バージョンの削除
    このアクションは、S3が非最新オブジェクトを完全に削除できるタイミングを指定します。CLIアクションは NoncurrentVersionExpiration です。

  • 期限切れの削除マーカーの削除
    期限切れのオブジェクト削除マーカーを削除します。 バージョニングが有効なバケットでは、削除マーカーを持つオブジェクトがオブジェクトの現在のバージョンになります。オブジェクトは削除されず、アクションは実行できません。これらのオブジェクトは、現在のバージョンが関連付けられていない場合に期限切れになります。CLIアクションは Expiration です。

  • 不完全なマルチパートアップロードの削除
    このアクションは、マルチパートアップロードを進行中のままにする最大時間 (日数) を設定します。その後、それらは削除されます。CLIアクションは AbortIncompleteMultipartUpload です。

手順は、使用するインターフェイスによって異なります。ONTAP 9.13.1では、CLIを使用する必要があります。

CLIを使用したライフサイクル管理ルールの管理

ONTAP 9.13.1以降では、ONTAP CLIを使用して、S3バケット内のオブジェクトを期限切れにするライフサイクル管理ルールを作成できます。

必要なもの

CLIでは、バケットライフサイクル管理ルールを作成するときに、有効期限アクションタイプごとに必須フィールドを定義する必要があります。これらのフィールドは、最初の作成後に変更できます。次の表に、各アクションタイプの固有のフィールドを示します。

アクションタイプ

固有のフィールド

NonCurrentVersionExpiration

  • -non-curr-days - 最新でないバージョンを削除するまでの日数

  • -new-non-curr-versions - 保持する最新でないバージョンの数

Expiration

  • -obj-age-days - オブジェクトの最新バージョンを削除できるようになるまでの日数(作成日からカウント)

  • -obj-exp-date - オブジェクトを期限切れにする日付

  • -expired-obj-del-markers - オブジェクトの削除マーカーをクリアする

AbortIncompleteMultipartUpload

  • -after-initiation-days -アップロードの開始から中止できるようになるまでの日数

バケット ライフサイクル管理ルールを特定のオブジェクトにのみ適用するには、ルールの作成時に各フィルターを設定する必要があります。ルールの作成時にフィルターが設定されていない場合、ルールはバケット内のすべてのオブジェクトに適用されます。

設定したフィルターは、以下を除いて、すべて作成後に変更できます。

  • -prefix

  • -tags

  • -obj-size-greater-than

  • -obj-size-less-than

手順
  1. vserver object-store-server bucket lifecycle-management-rule createコマンドと、使用する有効期限操作タイプに必要なフィールドを使用して、バケット ライフサイクル管理ルールを作成します。

次のコマンドは、NonCurrentVersionExpirationバケット ライフサイクル管理ルールを作成します。

vserver object-store-server bucket lifecycle-management-rule create -vserver <svm_name> -bucket <bucket_name> -rule-id <rule_name> -action NonCurrentVersionExpiration -index <lifecycle_rule_index_integer> -is-enabled {true|false} -prefix <object_name> -tags <text> -obj-size-greater-than {<integer>[KB|MB|GB|TB|PB]} -obj-size-less-than {<integer>[KB|MB|GB|TB|PB]} -new-non-curr-versions <integer> -non-curr-days <integer>

次のコマンドは、Expirationバケット ライフサイクル管理ルールを作成します。

vserver object-store-server bucket lifecycle-management-rule create -vserver <svm_name> -bucket <bucket_name> -rule-id <rule_name> -action Expiration -index <lifecycle_rule_index_integer> -is-enabled {true|false} -prefix <object_name> -tags <text> -obj-size-greater-than {<integer>[KB|MB|GB|TB|PB]} -obj-size-less-than {<integer>[KB|MB|GB|TB|PB]} -obj-age-days <integer> -obj-exp-date <"MM/DD/YYYY HH:MM:SS"> -expired-obj-del-marker {true|false}

次のコマンドは、AbortIncompleteMultipartUploadバケット ライフサイクル管理ルールを作成します。

vserver object-store-server bucket lifecycle-management-rule create -vserver <svm_name> -bucket <bucket_name> -rule-id <rule_name> -action AbortIncompleteMultipartUpload -index <lifecycle_rule_index_integer> -is-enabled {true|false} -prefix <object_name> -tags <text> -obj-size-greater-than {<integer>[KB|MB|GB|TB|PB]} -obj-size-less-than {<integer>[KB|MB|GB|TB|PB]} -after-initiation-days <integer>
Top of Page