エフサステクノロジーズ株式会社

本ページの製品は2024年4月1日より、エフサステクノロジーズ株式会社に統合となり、順次、切り替えを実施してまいります。一部、富士通表記が混在することがありますので、ご了承ください。

ONTAP 9 マニュアル ( CA08871-402 )

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

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を使用する必要があります。ONTAP 9.14.1以降では、ONTAP System Managerも使用できます。

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>

ONTAP System Managerを使用したライフサイクル管理ルールの管理

ONTAP 9.14.1以降では、ONTAP System Managerを使用してオブジェクトの有効期限を実装できます。S3オブジェクトのライフサイクル管理ルールの追加、編集、削除ができます。また、あるバケット用に作成したライフサイクルルールをインポートして、別のバケット内のオブジェクトに使用することもできます。アクティブなルールを無効にして、あとで有効にすることができます。

ライフサイクル管理ルールの追加

  1. [ストレージ] > [バケット]をクリックします。

  2. 有効期限ルールを指定するバケットを選択します。

  3. kebab iconアイコンをクリックし、[ライフサイクルルールの管理]を選択します。

  4. [+追加] > [ライフサイクルルール]をクリックします。

  5. [ライフサイクルルールの追加]ページで、ルールの名前を追加します。

  6. ルールのスコープを定義します。ルールをバケット内のすべてのオブジェクトに適用するか、特定のオブジェクトに適用するかを指定します。オブジェクトを指定する場合は、次のいずれかのフィルター条件を少なくとも1つ追加します。

    1. プレフィックス:ルールを適用するオブジェクト キー名のプレフィックスを指定します。通常は、オブジェクトのパスまたはフォルダーです。1つのルールに1つのプレフィックスを指定できます。有効なプレフィックスが指定されていない場合、ルールがバケット内のすべてのオブジェクトに適用されます。

    2. タグ:ルールを適用するオブジェクトのキーと値のペア(タグ)を3つまで指定します。有効なキーのみがフィルターリングに使用されます。値は省略可能です。なお、値を追加する場合は、キーに対応する有効な値のみを追加してください。

    3. サイズ:オブジェクトの最小サイズと最大サイズを指定してスコープを制限できます。一方または両方の値を指定できます。デフォルトの単位はMiBです。

  7. 操作を指定します。

    1. オブジェクトの現在のバージョンを期限切れにする:現在のすべてのオブジェクトが作成されてから所定の日数が経過したあと、または特定の日付に完全に使用不可になるようにルールを設定します。このオプションは、[期限切れのオブジェクト削除マーカーを削除する]オプションが選択されている場合は使用できません。

    2. 最新でないバージョンを完全に削除する:バージョンが最新でなくなったあと削除できるようになるまでの日数と、保持するバージョンの数を指定します。

    3. 期限切れのオブジェクト削除マーカーを削除する:期限切れ削除マーカー、つまり最新のオブジェクトに関連付けられていない削除マーカーを持つオブジェクトを削除するには、このアクションを選択します。

      このオプションは、保持期間後にすべてのオブジェクトを自動的に削除する[オブジェクトの現在のバージョンを期限切れにする]オプションを選択すると使用できなくなります。オブジェクト タグをフィルターリングに使用している場合も、このオプションは使用できません。
    4. 不完全なマルチパートアップロードを削除する:未完了のマルチパート アップロードを削除するまでの日数を設定します。進行中のマルチパート アップロードが指定した保持期間内に完了しない場合は、未完了のマルチパート アップロードを削除できます。オブジェクト タグをフィルターリングに使用していると、このオプションは使用できなくなります。

    5. [保存]をクリックします。

ライフサイクル ルールのインポート

  1. [ストレージ] > [バケット]をクリックします。

  2. 有効期限ルールのインポート先のバケットを選択します。

  3. kebab iconアイコンをクリックし、[ライフサイクルルールの管理]を選択します。

  4. [+追加] > [ルールのインポート]をクリックします。

  5. ルールをインポートするバケットを選択します。選択したバケットに対して定義されているライフサイクル管理ルールが表示されます。

  6. インポートするルールを選択します。ルールは一度に1つずつ選択できます。デフォルトでは最初のルールが選択されています。

  7. [インポート]をクリックします。

ルールの編集、削除、または無効化

編集できるライフサイクル管理操作は、ルールに関連付けられているもののみです。ルールがオブジェクト タグでフィルターされている場合は、[期限切れのオブジェクト削除マーカーを削除する]オプションと[不完全なマルチパートアップロードを削除する]オプションは使用できません。

ルールを削除すると、そのルールはそれまで関連付けられていたオブジェクトには適用されなくなります。

  1. [ストレージ] > [バケット]をクリックします。

  2. ライフサイクル管理ルールを編集、削除、または無効にするバケットを選択します。

  3. kebab iconアイコンをクリックし、[ライフサイクルルールの管理]を選択します。

  4. 目的のルールを選択します。編集と無効化は、一度に1つのルールに対して行うことができます。削除は一度に複数のルールに対して行うことができます。

  5. [編集][削除]、または[無効化]を選択し、手順を完了します。

Top of Page