以前、S3にはストレージクラスというものがあって、各クラスの特徴や料金をご紹介しましたね。
コスト削減 ストレージクラス分けでS3のコストを徹底的にしぼる!
今回は実際にストレークラスを変更するためにはどうしたらよいのか、
「S3のストレージクラスの変更方法」についてご紹介したいと思います。
本記事をお読みいただくことで、S3バケットに格納されている様々なオブジェクトを最適なクラスに振り分け、
余分なコストを削ぎ落とし、S3を最適化することができるようになります!
S3標準以外クラスにデータを格納する方法とは?
さてそれでは、S3標準以外のクラスへデータを格納するには、どのような方法があるのかをご紹介します。
S3標準以外のクラスへ格納するには、大きく分けて以下の2つがあります。
- アップロード時にクラスを指定する
- ライフサイクルルールを利用してクラスを移行する
1は、オブジェクトをS3へアップロードする際にクラスを指定する方法です。
初めから「このオブジェクトは○○クラスに格納するもの」と決まっている場合、この方法を用いてください。
2はS3のライフサイクルルール機能を利用して、一定期間後に別のストレージクラスへ移行させる方法です。
例えば、最初はS3標準で格納しておき、90日後からは自動的にアーカイブへ移行するといったことが可能です。
注意しなくてはならないのが、ライフサイクルルールは1つのクラスに少なくとも30日は保管させなくてはならないということです。
S3標準に7日間保管したらS3標準-IAへ移行する、ということはできません。
30日経ってませんからね。
この方法は、S3へ格納するオブジュエクトの性質があらかじめわかっており、一定期間後にクラスを変えるということがわかっている場合利用しましょう。
クラス変更自体に手数料はかかるのか?
どの方法を利用するかによって料金のかかり方が変わります。
1.のアップロード時に直接クラスを指定する場合、PUTというリクエスト料がかかることとなります。
2.のライフサイクルルールを用いる場合、
「Lifecycle Transition Requests into Standard – Infrequent Access or One Zone – Infrequent Access or Intelligent-Tiering」というライフサイクル料がかかります。
※まだ翻訳が進んでないみたいです・・汗
S3料金の詳細は、こちらのAWSの公式サイトをご確認ください。
アップロード時にストレージクラスを設定する方法
(1)S3コンソール画面を開き、格納先となるバケットを選択します
(2)[アップロード]をクリックします
(3)アップロード対象のファイルを選択し、[次へ]をクリックします
(4)[次へ]をクリックします
(5)ストレージクラスが選択できるウィンドウが表示されます。
ここで指定のクラスを選択して[次へ]をクリックします
※以下の画面では”Glacier”を指定しております。
(6)[アップロード]をクリックして完了です。
(7)アップロードしたファイルが指定したストレージクラスになっていることが確認できます
ライフサイクルルールを利用してクラス変更する方法
(1)S3コンソール画面を開き、格納先となるバケットを選択します
(2)[管理]をクリックします
(3)[ライフサイクルルールの追加]をクリックします
(4)”ルール名”を入力し、ルールの適用対象となる”プレフィックス”または”タグ”を入力して[次へ]をクリックします
※プレフィックスとは、S3の”フォルダ”と思っていただいてよいかと思います。
(5)さて問題のストレージクラスの移行設定です。
まず、”現行バージョン”と”以前のバージョン”にチェックができるようになっていますね。
これらはどういうことかというと、S3ではバージョン管理が機能として備わっています。
(バージョン管理機能はオプションとしてバケット単位でON/OFFが設定できます)
“現行バージョン”とは最新版、”以前のバージョン”とは最新版以外のバージョンを指しており、
どれを移行対象するか、それとも移行対象としないかを設定するという意味です。
例えば、”以前のバージョン”をチェックしたら、最新バージョンはそのまま、以前のバージョンは移行対象とする、ということです。
今回はテストとして、S3のバケットでバージョン管理をONにしている前提として、”以前のバージョン”にチェックをいれます。
※もし最新バージョンも含めてすべてクラス移行したい、という場合は”現行バージョン”にチェックをいれましょう。
(6)[+移行を追加する]をクリックします
(7)移行させたいクラスを指定、オブジェクトが最新バージョンでなくなってからの日数を入力し、[次へ]をクリックします
(8)[次へ][保存]をクリックして完了です。
※ここではオブジェクトの”削除”のライフサイクルを設定する箇所となります。
削除のライフサイクルについては、また後日ご紹介させていただきます。
(9)これでライフサイクルルールが完成です。
最新バージョンでなくなってから30日が過ぎると自動的に指定のクラスへ移行される形となります。
いかがでしたでしょうか?
今回は以前ご紹介したストレージクラスについて、具体的なクラス設定、またはクラス移行方法についてご紹介させていただきました。
ストレージクラスを適切に設定し、
S3のコスト適正化を目指しましょう!!
ということで以上となります。
hidesanでした!