1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

IBM Cloud Object Storageでのバージョン管理と有効期限の設定

Posted at

本記事の概要

IBM Cloud Object Storage(ICOS)は、IBM Cloudが提供するオブジェクトストレージサービスです。

IBM Cloud Object Storageでは、格納されたオブジェクトの履歴を管理することが可能ですが、その履歴は削除しない限り残り続け、運用を続けるとストレージの利用量増加に繋がります。そのため、古くなって利用しなくなった過去バージョンのオブジェクトは削除することが望ましいです。

本記事では、IBM Cloud Object Storageのバケットに対して、バージョン管理に加えて、オブジェクトの有効期限を設定することで、過去のバージョンを自動的に削除する仕組みをご紹介します。

IBM Cloud Object Storageのバケット作成と設定

※ICOSのインスタンスは作成済みの前提です。

ICOSのインスタンスの画面で「バケットの作成」ボタンをクリックします。
image.png

「バケットのカスタマイズ」をクリックします。
image.png

バケットの作成画面で任意のバケット名を入力します。
image.png

バケットの作成画面を下にスクロールすると、「オブジェクト・バージョン管理」の項目があるため、これを「有効」に設定します。
image.png

さらに下にスクロールして、「有効期限」の「追加+」をクリックします。
image.png

「有効期限ルールの追加」ダイアログが表示されるので、「有効期限ルール」を「有効」に設定します。現行バージョンの有効期限を設定することもできますが、今回は過去バージョン(非現行バージョン)の履歴を自動削除したいので、「非現行バージョンの有効期限」の「有効期限までの日数」を設定します。ここでは1日を設定してみます。
image.png

「有効期限ルールの追加」ダイアログの「拡張」タブをクリックすると、ルールの適用対象を設定できるようになります。「単純」タブではバケット内の一律の設定でしたが、「拡張」タブではオブジェクトの名前に特定の接頭部を持つもののみに対して有効期限ルールを設定できます(今回は使用しません)。
image.png

「単純」タブで「非現行バージョンの有効期限」を1日に設定して「保存」ボタンをクリックすると、以下の画面の状態になります。ルールIDは自動設定されます。
image.png

設定結果の検証

それでは設定した内容を検証してみます。試しにtest1.txtという適当なファイルを作成し、先ほど作成したバケットにアップロードします。バージョンが1つのみで、「現行バージョン」と表示されています。
image.png

test1.txtを編集・アップロードを2回実施した結果の画面です。「現行バージョン」以外の2つのバージョンが存在しています。
image.png

test1.txtのアップロードから1日以上が経過すると、以下の状態になりました。12バイトの現行バージョンのみが残っており、過去の2つのバージョンは削除されています。
image.png

なお、ドキュメントにも記載がありますが、有効期限が経過してすぐに削除されるわけではありません。有効期限はUTCの0時基準で丸められて評価され、期限切れと評価されてから24時間以内を目処に削除されるようです。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?