Amazon S3のリリースから先週で9年が経過しました!
リリース後、数多くの機能追加、グローバル展開、複数回にわたるストレージ料金やデータ転送料金の値下げを行ってきました。多くのお客様は我々を信頼いただき、ミッションクリティカルなデータ含め、様々な用途でS3をご利用頂いています。皆様の創造性やフィードバックからも、S3が皆様の要望に添えるオブジェクトストレージであり続けなければならないことを我々も感じております。
バケットのネームスペースはグローバルで一意ですが、S3は(他のAWSサービス同様)各AWSリージョンで稼働しています。(詳細はAWSグローバルインフラストラクチャページをご確認ください。)このモデルにより、皆様はデータの格納場所を完全にコントロールすることができます。ローカル規制の要件、レイテンシーの観点からデータ をお客様により近い場所に置かなければならないなど、その他様々な理由にもとづき、適切な格納場所を選択することができます。
我々は多くのお客様より、重要なデータを数百マイル離れた場所に複製したいというご要望をいただいてきました。この要望は多くの場合、機密性の高い金融情報や個人情報を取り扱う上で、厳重な規制に従うためのものです。
クロスリージョンレプリケーション
より簡単にS3のオブジェクトをセカンダリのリージョンに複製できる、クロスリージョンレプリケーションを本日リリースいたしました。この機能を利用することで、重要なお客様に対して、 異なるもしくは隣接する地域での複製を含む、上記で説明したような要望を実現することができるようになります。
この機能を有効にすることで、特定のS3バケット(もしくは特定のPrefix配下のオブジェクト)に対する全てのアップロード、更新、そして削除を監視し、他のリージョンにあるセカンダリバケットにレプリケーションを行います。
数分で機能を有効にし、利用を開始することができます!この機能は既存のS3のバージョニング機能に統合されており、必要であればコンソールからも有効にすることができます。
バージョニングを有効にすれば残りは簡単です。ディスティネーションのリージョンとバケット(特定のプレフィックスのみでのレプリケーションも可能)を選択し、IAMロールを設定するだけです。
既存のバケットを選択することもできますし、この段階で新しいバケットを作成することもできます。
また、S3がソースバケットのリストやリトリーブを行い、ディスティネーションバケットに対してレプリケーション処理を実行するためIAMロールを設定する必要があります。ポリシードキュメントを定義することで、異なるAWSアカウントのバケット間でのレプリケーションなど、簡単に高度なシナリを実現することもできます。コンソールを利用すれば、正しいIAMロールを設定することを手助けします。
全てのレプリケーションの設定を行い、ディスティネーションのバケットを確認すると期待通りまだ空の状態です。(レプリケーションは、新しく作成されたオブジェクトから動作します。)
AWS S3のマスターキーを利用して、低冗長化ストレージ(RRS)とサーバサイド暗号化(SSE)を有効にし、画像ファイルをアップロードします。
ディスティネーションバケットの画面を数回リフレッシュすると、期待通りオブジェクトが表示され、レプリカ自体もRRSとSSEが設定されています。
もし、オリジナルのオブジェクトを削除した場合、レプリカも削除されます。レプリケーションプロセスは対象オブジェクトのメタデータやACLs(Access Control Lists)も複製します。
S3 APIを利用してこの機能の有効化や、管理することも可能です。
新機能詳細
実際の環境で、クロスリージョンレプリケーションを利用いただく上でいくつか注意しなければならないことがあります。
バージョニング – まずはじめに、ソースバケットのS3のバージョニング機能を有効にする必要があります。もちろんディスティネーションバケット側も有効にすることが可能です。
ライフサイクルルール– ディスティネーションバケットではライフサイクルルールを利用して、古いバージョンの自動削除やAmazon Glacierへのマイグレーション設定などの管理をすることができます。
レプリケーションステータスの確認– ソースオブジェクトのHEADオペレーションでレプリケーションのステータスを確認
リージョン to リージョン– レプリケーションは必ずAWSリージョン間で行う必要があります。同一リージョン内にある2つのバケット間でこの機能を利用してレプリケーションを行うことはできません。
双方向レプリケーション–双方にレプリケーションルールを設定することで、異なる地域のバケット内のコンテンツを同期させることもできます。
新しいオブジェクト– ソースバケットの変更を監視するこの機能は、新しいオブジェクトの作成や既存オブジェクトの変更によりレプリケーションが行われます。もしも既存オブジェクトのレプリケーションを行いたい場合は、S3のCOPYオペレーションを利用することで、ディスティネーションバケットを最新にすることができます。
すぐにご利用いただけます
この機能はすでに有効で、本日よりご利用いただけます。追加でディスティネーションバケットのストレージ料金とデータ更新に対して、通常のAWSのリージョン間データ転送費用がかかります。より詳細の情報を知りたい場合は、S3料金表ページをご確認ください。
-- Jeff(翻訳 北迫)