はじめに
ICOS(IBM Cloud Object Storage)には以下のLifeCycle管理機能(Archive policy, Expiration rule, Retention policy)が存在しています。本記事ではそれらを紹介したいと思います。
Archive policy
一定の期間を経たあと、Standard/Vault/Cold Vault/FlexからArchiveにobjectを移動する機能です。
https://cloud.ibm.com/docs/services/cloud-object-storage?topic=cloud-object-storage-archive
- Archive classに移行することにより、大幅に価格を抑えることができます。(参考:価格表)

Expiration rule
一定期間を経過したobjectを削除する機能です。
https://cloud.ibm.com/docs/services/cloud-object-storage?topic=cloud-object-storage-expiry
- 設定変更は既存および新規のobjectに反映されます。設定変更が反映されるまでに最大で24時間要します(どうやら1日1回評価されているようです)。
- 削除対象のobjectを指定するのに、prefix(
log/
とかimages/
とか)が利用可能です。 - 有効期限日は、切り上げられて翌日の00:00 UTCに設定されます。例えば、retention policy=10日に設定されているbucketにおいて、
4月15日 05:10 UTC
に作成されたobjectは、4月26日 00:00 UTC
に有効期限が来ます。 - 有効期限が来たobjectは直ちに削除されるわけではなく、そこから24時間以内に削除されるようです(
The deletion of expired objects begins the following day and will typically take less than 24 hours.
)
Retention policy(Immutable objects)
一度設定したら、指定した期間の間は絶対に削除できなくなる機能です。
https://cloud.ibm.com/docs/services/cloud-object-storage?topic=cloud-object-storage-immutable
- 設定するためには、bucketの中身は空である必要があります。
- 特に何も指定しなければ、
Default retention period
が設定されます。Minimum retention period
とMaximum retention period
の間であれば、Objectをuploadする際に期間を指定できます。これらのretention periodは後から変更可能であり、最大で1000年
を指定することができます。 - Retention policyが設定されているbucketにはAsperaを使ってObjectをuploadすることはできません。
- Permanent retentionというpolicyも設定できますが、これを使うと永久にobjectおよびbucketを消せなくなるので、利用には慎重になった方がよいと思います。