管理对象生命周期

本页面介绍了如何启用对象生命周期管理并提供了生命周期政策的示例。有关此功能的说明(包括它支持的操作和条件),请参阅对象生命周期管理

在存储分区上设置生命周期管理

启用生命周期管理

要为存储分区启用生命周期管理,请执行以下操作:

Console

  1. 在 Google Cloud Platform Console 中打开 Cloud Storage 浏览器。
    打开 Cloud Storage 浏览器
  2. 在存储分区列表中,找到要启用此功能的存储分区,然后在生命周期列中点击

    随即将显示生命周期规则页面。

  3. 点击添加规则

  4. 在出现的页面中,指定一个配置。

    1. 选择执行操作的条件。

    2. 点击继续

    3. 选择对象满足条件时要执行的操作。

    4. 点击继续

    5. 点击保存

gsutil

  1. 使用您要应用的生命周期配置规则创建一个 .json 文件(请参阅下面的示例)。

  2. 使用 lifecycle set 命令应用配置,将 [VALUES_IN_BRACKETS] 替换为适当的值:

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

REST API

JSON API

  1. OAuth 2.0 Playground 获取授权访问令牌。将 Playground 配置为使用您自己的 OAuth 凭据。
  2. 使用您要应用的生命周期配置规则创建一个 .json 文件(请参阅下面的示例)。
  3. 使用 cURL,通过 PATCH Bucket 请求调用 JSON API,将 [VALUES_IN_BRACKETS] 替换为适当的值:
    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"

XML API

  1. OAuth 2.0 Playground 获取授权访问令牌。将 Playground 配置为使用您自己的 OAuth 凭据。
  2. 创建包含您要应用的生命周期配置规则的请求正文(请参阅下面的示例)。
  3. 使用 cURL,通过 PUT Bucket 请求调用 XML API,将 [VALUES_IN_BRACKETS] 替换为适当的值:
    curl -X PUT --data-binary @[XML_FILE].xml \
    -H "Authorization: Bearer [OAUTH2_TOKEN]" \
    "https://[BUCKET_NAME].storage.googleapis.com/?lifecycle"

停用生命周期管理

要为存储分区停用生命周期管理,请执行以下操作:

Console

  1. 在 Google Cloud Platform Console 中打开 Cloud Storage 浏览器。
    打开 Cloud Storage 浏览器
  2. 在存储分区列表中,找到要停用此功能的存储分区,然后在生命周期列中点击已启用

    随即将显示生命周期规则页面。

  3. 点击全部删除

  4. 在出现的确认窗口中,点击删除

gsutil

  1. 创建具有空的生命周期配置的 .json 文件:

    {}
  2. 使用 lifecycle set 命令,将 [VALUES_IN_BRACKETS] 替换为适当的值:

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

REST API

JSON API

  1. OAuth 2.0 Playground 获取授权访问令牌。将 Playground 配置为使用您自己的 OAuth 凭据。
  2. 创建具有空的生命周期配置的 .json 文件:
    {}
  3. 使用 cURL,通过 PATCH Bucket 请求调用 JSON API,将 [VALUES_IN_BRACKETS] 替换为适当的值:
    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"

XML API

  1. OAuth 2.0 Playground 获取授权访问令牌。将 Playground 配置为使用您自己的 OAuth 凭据。
  2. 创建包含空的生命周期配置的请求正文:
    <?xml version="1.0" encoding="UTF-8" ?>
    <LifecycleConfiguration/>
  3. 使用 cURL,通过 PUT Bucket 请求调用 XML API,将 [VALUES_IN_BRACKETS] 替换为适当的值:
    curl -X PUT --data-binary @[XML_FILE].xml \
    -H "Authorization: Bearer [OAUTH2_TOKEN]" \
    "https://[BUCKET_NAME].storage.googleapis.com/?lifecycle"

检查生命周期配置

要检查存储分区上设置的生命周期配置,请执行以下操作:

Console

  1. 在 Google Cloud Platform Console 中打开 Cloud Storage 浏览器。
    打开 Cloud Storage 浏览器
  2. 在存储分区列表中,您可以在生命周期列中看到每个存储分区的生命周期状态。

    您可以点击此状态以添加、查看、修改和删除规则。

gsutil

  1. 使用 lifecycle get 命令,将 [VALUES_IN_BRACKETS] 替换为适当的值:

    gsutil lifecycle get gs://[BUCKET_NAME]

REST API

JSON API

  1. OAuth 2.0 Playground 获取授权访问令牌。将 Playground 配置为使用您自己的 OAuth 凭据。。
  2. 使用 cURL,通过 GET Bucket 请求调用 JSON API,将 [VALUES_IN_BRACKETS] 替换为适当的值:
    curl -X GET -H "Authorization: Bearer [OAUTH2_TOKEN]" \
    "https://www.googleapis.com/storage/v1/b/[BUCKET_NAME]?fields=lifecycle"

XML API

  1. OAuth 2.0 Playground 获取授权访问令牌。将 Playground 配置为使用您自己的 OAuth 凭据。
  2. 使用 cURL,通过 GET Bucket 请求调用 XML API,将 [VALUES_IN_BRACKETS] 替换为适当的值:
    curl -X GET \
        -H "Authorization: Bearer [OAUTH2_TOKEN]" \
        "https://[BUCKET_NAME].storage.googleapis.com/?lifecycle"

对象生命周期配置示例

以下示例显示了特定的生命周期配置,该配置可在满足通用条件时删除对象和更改对象的存储类别。如需查看关于生命周期配置的详细讨论(包括可用的操作和条件的列表),请参阅对象生命周期管理

删除对象

以下生命周期配置定义了两个规则。

  1. 删除存在时间超过 30 天的活动对象。
  2. 删除存在时间超过 10 天的归档对象。请注意,只有在您已启用或以前启用过对象版本控制的存储分区中才能满足此规则。

Console

以下规则可删除存在时间超过 30 天的活动对象:

删除存在时间超过 30 天的活动对象。

以下规则可删除存在时间超过 10 天的归档对象:

删除具有 3 个以上更新版本的归档对象。

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 的生命周期配置格式

更改对象的存储类别

以下生命周期配置定义了两个规则。

  1. 如果对象的存储类别存在时间大于 365 天(一年)且其当前存储类别为 Multi-Regional 存储空间、Standard 存储空间或 Durable Reduced Availability,则将其更改为 Nearline 存储空间。
  2. 如果对象的存储类别的存在时间大于 1095 天(三年)且其当前存储类别为 Nearline 存储空间,则将其更改为 Coldline 存储空间。

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 的生命周期配置格式

此页内容是否有用?请给出您的反馈和评价:

发送以下问题的反馈:

此网页
Cloud Storage
需要帮助?请访问我们的支持页面