オブジェクトのライフサイクル管理

このページでは、オブジェクトのライフサイクル管理を有効にする方法を説明します。また、ライフサイクル ポリシーの例も示します。処理や条件など、この機能の詳細については、オブジェクトのライフサイクル管理をご覧ください。

バケットにライフサイクル管理を設定する

ライフサイクル管理を有効にする

バケットでライフサイクル管理を有効にするには:

Console

  1. Google Cloud Platform Console で Cloud Storage ブラウザを開きます。
    Cloud Storage ブラウザを開く
  2. バケットリストで、有効にするバケットを見つけ、[ライフサイクル] 列で [なし] をクリックします。

    ライフサイクル ルールのページが表示されます。

  3. [ルールを追加] をクリックします。

  4. 表示されるページで、構成を指定します。

    1. 操作の実行条件を選択します。

    2. [続行] をクリックします。

    3. オブジェクトが条件を満たす場合に実行する操作を選択します。

    4. [続行] をクリックします。

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

gsutil

  1. .json ファイルを作成して、適用するライフサイクル構成ルールを記述します(以下の例を参照)。

  2. lifecycle set コマンドを使用して、構成を適用します。

    gsutil lifecycle set [LIFECYCLE_CONFIG_FILE] gs://[BUCKET_NAME]

    ここで

    • [LIFECYCLE_CONFIG_FILE] は、手順 1 で作成したファイルの名前です。
    • [BUCKET_NAME] は、該当するバケットの名前です。例: my-bucket

REST API

JSON API

  1. OAuth 2.0 Playground から承認アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を設定します。
  2. .json ファイルを作成して、適用するライフサイクル構成ルールを記述します(以下の例を参照)。

  3. cURL を使用して JSON API を呼び出し、PATCH Bucket リクエストを行います。

    curl -X PATCH --data-binary @[LIFECYCLE_CONFIG_FILE].json \
      -H "Authorization: Bearer [OAUTH2_TOKEN]" \
      -H "Content-Type: application/json" \
      "https://www.googleapis.com/storage/v1/b/[BUCKET_NAME]?fields=lifecycle"

    ここで

    • [LIFECYCLE_CONFIG_FILE] は、手順 2 で作成したファイルの名前です。
    • [OAUTH2_TOKEN] は、手順 1 で生成したアクセス トークンです。
    • [BUCKET_NAME] は、該当するバケットの名前です。例: my-bucket

XML API

  1. OAuth 2.0 Playground から承認アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を設定します。
  2. .xml ファイルを作成して、適用するライフサイクル構成ルールを記述します(以下の例を参照)。

  3. cURL を使用して XML API を呼び出し、PUT Bucket リクエストを行います。

    curl -X PUT --data-binary @[XML_FILE].xml \
      -H "Authorization: Bearer [OAUTH2_TOKEN]" \
      "https://storage.googleapis.com/[BUCKET_NAME]?lifecycle"

    ここで

    • [XML_FILE] は、手順 2 で作成したファイルの名前です。
    • [OAUTH2_TOKEN] は、手順 1 で生成したアクセス トークンです。
    • [BUCKET_NAME] は、該当するバケットの名前です。例: my-bucket

ライフサイクル管理を無効にする

バケットのライフサイクル管理を無効にするには:

Console

  1. Google Cloud Platform Console で Cloud Storage ブラウザを開きます。
    Cloud Storage ブラウザを開く
  2. バケットリストで、無効にするバケットを見つけ、[ライフサイクル] 列の [有効] をクリックします。

    ライフサイクル ルールのページが表示されます。

  3. [すべて削除] をクリックします。

  4. 表示される確認ウィンドウで、[削除] をクリックします。

gsutil

  1. ライフサイクルの構成を空にした .json ファイルを作成します。

    {}
  2. lifecycle set コマンドを使用します。

    gsutil lifecycle set [LIFECYCLE_CONFIG_FILE] gs://[BUCKET_NAME]

    ここで

    • [LIFECYCLE_CONFIG_FILE] は、手順 1 で作成したファイルの名前です。
    • [BUCKET_NAME] は、該当するバケットの名前です。例: my-bucket

REST API

JSON API

  1. OAuth 2.0 Playground から承認アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を設定します。
  2. ライフサイクルの構成を空にした .json ファイルを作成します。

    {}
  3. cURL を使用して JSON API を呼び出し、PATCH Bucket リクエストを行います。

    curl -X PATCH --data-binary @[LIFECYCLE_CONFIG_FILE].json \
      -H "Authorization: Bearer [OAUTH2_TOKEN]" \
      -H "Content-Type: application/json" \
      "https://www.googleapis.com/storage/v1/b/[BUCKET_NAME]?fields=lifecycle"

    ここで

    • [LIFECYCLE_CONFIG_FILE] は、手順 2 で作成したファイルの名前です。
    • [OAUTH2_TOKEN] は、手順 1 で生成したアクセス トークンです。
    • [BUCKET_NAME] は、該当するバケットの名前です。例: my-bucket

XML API

  1. OAuth 2.0 Playground から承認アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を設定します。
  2. ライフサイクルの構成を空にした .xml ファイルを作成します。

    <LifecycleConfiguration/>
  3. cURL を使用して XML API を呼び出し、PUT Bucket リクエストを行います。

    curl -X PUT --data-binary @[XML_FILE].xml \
      -H "Authorization: Bearer [OAUTH2_TOKEN]" \
      "https://storage.googleapis.com/[BUCKET_NAME]?lifecycle"

    ここで

    • [XML_FILE] は、手順 2 で作成したファイルの名前です。
    • [OAUTH2_TOKEN] は、手順 1 で生成したアクセス トークンです。
    • [BUCKET_NAME] は、該当するバケットの名前です。例: my-bucket

ライフサイクル構成を確認する

バケットに設定したライフサイクル構成を確認するには:

Console

  1. Google Cloud Platform Console で Cloud Storage ブラウザを開きます。
    Cloud Storage ブラウザを開く
  2. バケットリストの [ライフサイクル] 列に、各バケットのライフサイクル ステータスが表示されます。

    このステータスをクリックして、ルールを追加、表示、編集、および削除できます。

gsutil

  1. lifecycle get コマンドを使用します。

    gsutil lifecycle get gs://[BUCKET_NAME]

    [BUCKET_NAME] は、該当するバケットの名前です。例: my-bucket

REST API

JSON API

  1. OAuth 2.0 Playground から承認アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を設定します。
  2. cURL を使用して JSON API を呼び出し、GET Bucket リクエストを行います。

    curl -X GET \
      -H "Authorization: Bearer [OAUTH2_TOKEN]" \
      "https://www.googleapis.com/storage/v1/b/[BUCKET_NAME]?fields=lifecycle"

    ここで

    • [OAUTH2_TOKEN] は、手順 1 で生成したアクセス トークンです。
    • [BUCKET_NAME] は、該当するバケットの名前です。例: my-bucket

XML API

  1. OAuth 2.0 Playground から承認アクセス トークンを取得します。固有の OAuth 認証情報を使用するように Playground を設定します。
  2. cURL を使用して XML API を呼び出し、GET Bucket リクエストを行います。

    curl -X GET \
      -H "Authorization: Bearer [OAUTH2_TOKEN]" \
      "https://storage.googleapis.com/[BUCKET_NAME]?lifecycle"

    ここで

    • [OAUTH2_TOKEN] は、手順 1 で生成したアクセス トークンです。
    • [BUCKET_NAME] は、該当するバケットの名前です。例: my-bucket

オブジェクトのライフサイクルの構成例

次の例は、共通の条件が満たされたときに、オブジェクトの削除とオブジェクトのストレージ クラスの変更を行う特定のライフサイクル構成です。指定できる処理や条件など、ライフサイクル構成の詳細については、オブジェクトのライフサイクル管理をご覧ください。

オブジェクトを削除する

次のライフサイクル構成では、2 つのルールが定義されています。

  1. 30 日以上経過したライブ オブジェクトを削除する。
  2. 10 日以上経過したアーカイブ済みオブジェクトを削除する。このルールは、オブジェクトのバージョニングを有効にしている(または、以前有効にした)バケットにのみ適用されます。

Console

次のルールは、30 日以上経過しているライブ オブジェクトを削除します。

30 日以上経過したライブ オブジェクトを削除する

次のルールは、10 日以上経過しているアーカイブ済みオブジェクトを削除します。

10 日以上経過したアーカイブ済みオブジェクトを削除する。

gsutil

次のライフサイクル構成をバケットに適用するには、ライフサイクル管理を有効にします

{
"lifecycle": {
  "rule": [
  {
    "action": {"type": "Delete"},
    "condition": {
      "age": 30,
      "isLive": true
    }
  },
  {
    "action": {"type": "Delete"},
    "condition": {
      "age": 10,
      "isLive": false
    }
  }
]
}
}

ライフサイクル構成ファイルの一般的な形式については、JSON のバケット リソース表現をご覧ください。

REST API

JSON API

次のライフサイクル構成をバケットに適用するには、ライフサイクル管理を有効にします

{
"lifecycle": {
  "rule": [
  {
    "action": {"type": "Delete"},
    "condition": {
      "age": 30,
      "isLive": true
    }
  },
  {
    "action": {"type": "Delete"},
    "condition": {
      "age": 10,
      "isLive": false
    }
  }
]
}
}

ライフサイクル構成ファイルの一般的な形式については、JSON のバケット リソース表現をご覧ください。

XML API

次のライフサイクル構成をバケットに適用するには、ライフサイクル管理を有効にします

<?xml version="1.0" encoding="UTF-8" ?>
<LifecycleConfiguration>
    <Rule>
        <Action>
            <Delete/>
        </Action>
        <Condition>
            <IsLive>true</IsLive>
            <Age>30</Age>
        </Condition>
    </Rule>
    <Rule>
        <Action>
            <Delete/>
        </Action>
        <Condition>
            <IsLive>false</IsLive>
            <Age>10</Age>
        </Condition>
    </Rule>
</LifecycleConfiguration>

ライフサイクル構成ファイルの一般的な形式については、XML のライフサイクル構成形式をご覧ください。

オブジェクトのストレージ クラスを変更する

次のライフサイクル構成では、2 つのルールが定義されています。

  1. オブジェクトの経過時間が 365 日(1 年)を超えていて、かつ、現在のストレージ クラスが Standard Storage、Multi-Regional Storage、Durable Reduced Availability(DRA)Storage のいずれかの場合、オブジェクトのストレージ クラスを Nearline Storage に変更する。
  2. オブジェクトの経過期間が 1,095 日(3 年)を超えていて、かつ、現在のストレージ クラスが Nearline Storage の場合、オブジェクトのストレージ クラスを Coldline Storage に変更する。

Console

次のルールは、365 日後にオブジェクトを Nearline に移動します。

365 日後にオブジェクトを Nearline に移動する

次のルールは、1095 日後にオブジェクトを Coldline に移動します。

1095 日後にオブジェクトを Coldline に移動する

gsutil

次のライフサイクル構成をバケットに適用するには、ライフサイクル管理を有効にします

{
"lifecycle": {
  "rule": [
  {
    "action": {
      "type": "SetStorageClass",
      "storageClass": "NEARLINE"
    },
    "condition": {
      "age": 365,
      "matchesStorageClass": ["MULTI_REGIONAL", "STANDARD", "DURABLE_REDUCED_AVAILABILITY"]
    }
  },
  {
    "action": {
      "type": "SetStorageClass",
      "storageClass": "COLDLINE"
    },
    "condition": {
      "age": 1095,
      "matchesStorageClass": ["NEARLINE"]
    }
  }
]
}
}

ライフサイクル構成ファイルの一般的な形式については、JSON のバケット リソース表現をご覧ください。

REST API

JSON API

次のライフサイクル構成をバケットに適用するには、ライフサイクル管理を有効にします

{
"lifecycle": {
  "rule": [
  {
    "action": {
      "type": "SetStorageClass",
      "storageClass": "NEARLINE"
    },
    "condition": {
      "age": 365,
      "matchesStorageClass": ["MULTI_REGIONAL", "STANDARD", "DURABLE_REDUCED_AVAILABILITY"]
    }
  },
  {
    "action": {
      "type": "SetStorageClass",
      "storageClass": "COLDLINE"
    },
    "condition": {
      "age": 1095,
      "matchesStorageClass": ["NEARLINE"]
    }
  }
]
}
}

ライフサイクル構成ファイルの一般的な形式については、JSON のバケット リソース表現をご覧ください。

XML API

次のライフサイクル構成をバケットに適用するには、ライフサイクル管理を有効にします

<?xml version="1.0" encoding="UTF-8" ?>
<LifecycleConfiguration>
    <Rule>
        <Action>
            <SetStorageClass>NEARLINE</SetStorageClass>
        </Action>
        <Condition>
            <Age>365</Age>
            <MatchesStorageClass>MULTI_REGIONAL</MatchesStorageClass>
            <MatchesStorageClass>STANDARD</MatchesStorageClass>
            <MatchesStorageClass>DURABLE_REDUCED_AVAILABILITY</MatchesStorageClass>
        </Condition>
    </Rule>
    <Rule>
        <Action>
            <SetStorageClass>COLDLINE</SetStorageClass>
        </Action>
        <Condition>
            <Age>1095</Age>
            <MatchesStorageClass>NEARLINE</MatchesStorageClass>
        </Condition>
    </Rule>
</LifecycleConfiguration>

ライフサイクル構成ファイルの一般的な形式については、XML のライフサイクル構成形式をご覧ください。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。