S3のバージョン管理をしてみた

2021.08.13

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、イムチェジョンです。
今回のブログではS3のバージョン管理をしてみたいと思います。

アジェンダ

  1. S3のバージョン管理とは?
  2. バージョン管理のハンズオン
  3. まとめ

1. S3のバージョン管理とは

  • S3のバージョン管理機能を使用すると、バケットに保存された全てのオブジェクトのバージョンを保存、検索、復元可能になる。
  • バージョン管理を有効化したバケットは、オブジェクトを誤って削除したり上書きしたりしても復元しやすくなる。
  • 基本的にバケットS3バージョン管理は無効化されているためには有効化する必要がある。

2. バージョン管理のハンズオン

2-1. S3バケットにオブジェクトをアップロード

今回はdog.jpgcat.jpgファイルを利用してバージョン管理をしてみます。S3バケットにオブジェクトをアップロードしましょう。

まずはdog.jpgをアップロードします。

バージョン管理有効化

その後、バージョン管理を有効化します。
プロパティバケットのバージョニングを編集します。

バケットのバージョニングを有効化し、変更を保存します。

オブジェクトでバージョンを表示するとバージョンIDが見えるようになります。
しかし、バージョニングしてない時にアップロードしたファイルのバージョンはNULLに表示されます。

なので、もう一回ファイルをアップロードしてバージョンを確認してみましょう。

dog.jpgcat.jpgをアップロードしてみたらcat.jpgは新しいファイルができ、dog.jpgも前のNULLとは違うバージョンのファイルができました。

もう一回ファイルをアップロードしてみます。

dog.jpgcat.jpgの新しいバージョンのファイルができました。

バージョン管理の復元機能

今回は間違って削除してしまったファイルを復元してみましょう。
まず、dog.jpgのファイルを間違って削除してしまいました。

S3バケットでバージョンを表示してみると削除されたはずのdog.jpgの一番上にタイプが削除マーカーになっているバージョンが存在します。
それが削除されたバージョンになるので、削除マーカータイプのバージョンを削除しましょう。

削除したら削除されたバージョンがなくなったので、削除する前に戻るようになります。

バージョンの表示をオフにしてもdog.jpgが存在するのを確認できます。これで復元完了です。

3. まとめ

今回はS3のバージョン管理をしてみました。削除も削除できるのはすごいと思いました。