Amazon Web Services ブログ

AWS Storage Gateway でファイルインターフェイス

AWS re:Invent のレビュー」といったブログカテゴリを追加した方がいいかもしれませんね。去年の 11 月、AWS Storage Gateway に重要な機能を追加しましたが、忙しすぎてその調査やブログを書く時間を取れずにいました。Storage Gateway は既存のアプリケーションと AWS Cloud の間に位置するマルチプロトコルストレージアプライアンスです。お使いのアプリケーションやクライアントオペレーティングシステムは (設定によりますが) ゲートウェイをファイルサーバー、ローカルディスクボリュームまたは仮想テープライブラリ (VTL) と見なします。その背景でゲートウェイはコスト効率が良く耐久性のある安全なストレージに Amazon Simple Storage Service (S3) を使用しています。Storage Gateway はデータをローカルでキャッシュし、帯域幅の管理機能を使用してデータ転送を最適化します。Storage Gateway はインストールや設定そして実行が簡単な自己完結型の仮想アプライアンスとして提供されています (詳細は「Storage Gateway のユーザーガイド (Storage Gateway User Guide) 」をご覧ください)。既存の環境でクラウドストレージのスケールや耐久性そしてコスト面におけるメリットを活用できます。既存のファイルやディレクトリを S3 に移動するプロセスを減らし、ドラッグアンドドロップ (または CLI ベースのコピー) でシンプルに移動できます。その他多くの AWS サービスと同様に、2012 年にリリースされてから Storage Gateway にいくつもの機能が追加されてきました (「AWS Storage Gateway – AWS クラウドストレージと既存のオンプレミスアプリケーションを統合 (The AWS Storage Gateway – Integrate Your Existing On-Premises Applications with AWS Cloud Storage)」)。Storage Gateway をリリースした時点で、ストレージボリュームの作成や iSCSI デバイスにアタッチできたほか、ボリュームすべてを保存したり、ゲートウェイでもっとも頻繁にアクセスされているデータのキャッシュを保存するオプションを提供します。そして、これらはすべて S3 でサポートされています。そしてその後、仮想テープライブラリのサポートを追加しました (「AWS Storage Gateway で仮想テープライブラリを作成 (Create a Virtual Tape Library Using the AWS Storage Gateway)」)。今年に入ってからは読み取り専用のファイル共有、ユーザーアクセス権限のスカッシュ、および追加/削除されたオブジェクトのスキャンを追加しました。新しいファイルインターフェイス AWS re:Invent で 3 つめのオプションをリリースしました。今回はそれについてご紹介します。オンプレミスサーバーやデスクトップにマウントできる仮想ファイルサーバーとして Storage Gateway を使用できるようになりました。データセンターまたはクラウドでセットアップが完了すると、設定済みのバケットを NFS マウントポイントとして利用できるようになります。アプリケーションは NFS 上でファイルの読み取りや書き込みを行うだけです。背景ではゲートウェイがネイティブにアクセスできる S3 バケットでこうしたオペレーションをオブジェクトレベルにします。ファイルゲートウェイを作成するには Storage Gateway コンソールにアクセスし [Get started] をクリックしてから [File gateway] を選択します。

VMware ESXi または Amazon EC2 のホストプラットフォームを選択します。

プレミスで Storage Gateway をホストし、永続的または一時的なクラウドへのブリッジとして使用するお客様が多くなるのではないかと思います。このオプションのユースケースには、バックアップ、移行、アーカイブ、分析、ストレージ階層化、大量のコンピューティングを伴うプロセスの簡略化が含まれています。クラウドにデータが入り次第、複数のストレージ階層化 (不定期なアクセスや Glacier はアーカイブに最適です)、ストレージ分析、タグ付けなど様々な S3 の機能を活用できるようになります。私のオンプレミスにはあまりデータがないので、このブログ用として EC2 インスタンスで Storage Gateway を実行します。インスタンスを起動し画面に表示される手順ごとに設定します。適切なインバウンドセキュリティグループルールを作成します (HTTP アクセスのポート 80 と NFS のポート 2049)。キャッシュとして使用するために汎用目的の SSD ストレージ 150 GiB を追加しました。

インスタンスが起動したら、そのパブリック IP アドレスを取得し、新に開始したゲートウェイと繋げるために使用します。

タイムゾーンを設定しゲートウェイの名前を指定したら [Activate gateway] をクリックします。

次にローカルストレージをキャッシュとして設定し [Save and continue] をクリックします。

ゲートウェイが実行され、コンソールでも表示されています。

次に [Create file share] をクリックし、NFS シェアを作成して S3 バケットと関連付けます。

ご覧のように、ここでストレージクラスを選択することができます (自分のニーズまたはユースケースに合わせて Standard または Standard – Infrequent Access を選択)。この時点でゲートウェイはバケットにファイルをアップロードする必要があります。[Create a new IAM role] をクリックすると、ロールとポリシーを作成できます (詳細は「Amazon S3 Destination にアクセス権限を付与する (Granting Access to an Amazon S3 Destination)」をご覧ください)。設定を確認し [Create file share] をクリックします。

ところで Root スカッシュは AWS Storage Gateway の機能で野菜の名前ではありません (念のため)。これが有効になっていると (デフォルトでは有効) root (user id 0) が所有するものとして到着したファイルは user id 65534 にマップされます (従来は nobody)。新しいファイルと新しいディレクトリにデフォルト権限をセットアップすることもできます。新しいシェアがコンソールで表示され、数秒で利用が可能になります。

コンソールに Linux、Microsoft Windows、macOS の適切なマウントコマンドが表示されます。このコマンドはインスタンスのプライベート IP アドレスを使用します。大方の場合、その代わりにパブリックアドレスの使用をおすすめします (説明の必要もないと思いますが、パブリック NFS シェアを作成する場合は慎重に行ってください。そして接続を許可している IP アドレスを詳細に管理することもお忘れなく)。S3 コンソールでバケットを調べます (jbarr-gw-1)。予想どおり空でした。

次に EC2 インスタンスでシェアをマウントし、いくつかのファイルをコピーします。

コンソールに戻ると、予想どおりバケット内に新しいフォルダ (jeff_code) を見つけることができます。その中にはシェアにコピーしたファイルがあります。

お分かりのように、ファイルは S3 に直接コピーされ、通常の S3 オブジェクトになっています。つまり、既存の S3 ツール、コード、分析を使用してプロセスできることを意味しています。以下の例をご覧ください。

  • 分析 – 新しい S3 メトリクスと分析を使用して、バケット全体またはその中のディレクトリツリーを分析することができます。
  • コードAWS LambdaAmazon Rekognition はイメージのアップロードをプロセスする場合に使用できます。アイデアやコードについては「サーバーレスの画像認識について (Serverless Photo Recognition)」をご覧ください。Amazon Elasticsearch Service を使用していくつかまたはすべてのファイルをインデックスしたり Amazon EMR で大量のデータをプロセスすることができます。
  • ツール – バケット内にある既存のオブジェクトをプロセスしたり、S3 API を使用して新しいオブジェクトを作成することができます。作成または削除を行うコードまたはスクリプトが RefreshCache 関数を呼び出し、バケットに関連しているゲートウェイのコンテンツを同期するようにします (同じバケットで複数の読み取り専用ゲートウェイにポイントすることで、マルチサイトデータディストリビューションワークフローを作成できます)。また、バックアップの送信先としてシェアを使用することで、ファイル中心のバックアップツールを活用することもできます。

ゲートウェイはファイルのメタデータすべてを S3 メタデータとして保存します (所有者、グループ、権限など)。

Storage Gateway リソース Storage Gateway の詳細については次をご参照ください。プレゼンテーション – 「AWS Storage Gateway の詳細について (Deep Dive on the AWS Storage Gateway)」: ホワイトペーパー – 「ハイブリッドアーキテクチャのファイルゲートウェイ – 概要とベストプラクティス (File Gateway for Hybrid Architectures – Overview and Best Practices)」: 最近のビデオ:

今すぐ利用可能
この優れた AWS 機能は去年の 11 月よりご利用可能になっています。

Jeff;