Amazon Web Services ブログ

Amazon FSx for Lustre – Amazon S3 統合の強化

2021 年 11 月 30 日(米国時間)、 Amazon FSx for Lustre の 2 つの追加機能を発表しました。まず、ファイルシステムとAmazon Simple Storage Service(Amazon S3)との完全な双方向同期する(削除されたファイルやオブジェクトを含む)。2 つ目は、ファイルシステムを複数の S3 バケットまたはプレフィックスと同期する機能です。

Lustre は、大規模な分散並列ファイルシステムで、ほとんどの大規模スーパーコンピューターのワークロードに電力を供給します。気象学、生命科学、エンジニアリングシミュレーションなどのハイパフォーマンスコンピューティングワークロードで AWS のお客様に人気があります。メディアやエンターテインメント、金融サービス業界でも使用されています。

Sun Microsystemsで働いていたとき、初めて Lustre ファイルシステムを試すことができました。私はプリセールスエンジニアで、数百万ドル規模のコンピューティングおよびストレージインフラストラクチャを金融サービス企業に販売する案件に取り組みました。当時、Lustre ファイルシステムへのアクセスは贅沢でした。それには、高価なコンピューティング、ストレージ、ネットワークハードウェアが必要でした。配達まで数週間待たなければなりませんでした。さらに、クラスターのインストールと構成には数日かかりました。

2021 年に早送りすると、オンデマンドペタバイト規模の Lustre クラスターを作成し、AWS クラウドで実行されているコンピューティングリソースにファイルシステムを添付し、使用した分に対してのみ支払いを行う場合があります。ストレージエリアネットワーク(SAN)、ファイバチャネル(FC)ファブリック、その他の基盤となるテクノロジーについて知る必要はありません。

最新のアプリケーションでは、ワークロードごとに異なるストレージオプションが使用されています。データ変換、準備、インポート/エクスポートタスクには S3 オブジェクトストレージを使用するのが一般的です。他のワークロードでは、POSIX ファイルシステムがデータにアクセスする必要があるかもしれません。FSx for Lustre では、S3 に保存されているオブジェクトを Lustre ファイルシステムと同期して、これらの要件を満たすことができます。

S3 バケットをファイルシステムにリンクすると、FSx for Lustre は S3 オブジェクトをファイルとして透過的に表示し、結果を S3 に書き戻すことができます。

複数の S3 バケットによる完全双方向同期
ワークロードは S3 バケットへの POSIX 準拠のファイルシステムの高速アクセスが必要な場合は、FSx for Lustre を使用して S3 バケットをファイルシステムにリンクし、ファイルシステムと S3 間で双方向でデータの同期を維持できます。しかし、今日まで、いくつかの制限がありました。まず、FSx for Lustre から S3 にデータをエクスポートするタスクを手動で構成する必要がありました。次に、S3 上の削除されたファイルは、ファイルシステムから自動的に削除されませんでした。3つ目は、FSx for Lustre ファイルシステムが 1 つの S3 バケットのみと同期された。今回の起動では、これら3つの課題に取り組んでいます。

本日より、データリポジトリの関連付けに自動エクスポートポリシーを設定すると、FSx for Lustre ファイルシステム上のファイルが S3 のデータリポジトリに自動的にエクスポートされます。次に、S3 上の削除されたオブジェクトが FSx for Lustre ファイルシステムから削除されるようになりました。その逆も可能です。FSx for Lustre でファイルを削除すると、S3 上の対応するオブジェクトが削除されます。最後に、FSx for Lustre ファイルシステムを複数の S3 バケットと同期できるようになりました。Lustre ファイルシステムのルートには、バケットごとに異なる道があります。たとえば、S3 バケットのログを /fsx/logs にマッピングし、他の financial_data バケットを /fsx/finance にマッピングすることができます。

これらの新機能は、ファイルベースとオブジェクトベースのワークフローの両方を使用して S3 バケット内のデータを同時に処理し、これらのワークフロー間でほぼリアルタイムで結果を共有する必要がある場合に役立ちます。たとえば、ファイルデータにアクセスするアプリケーションは、S3 バケットにリンクされた FSx for Lustre ファイルシステムを使用してアクセスできますが、 Amazon EMR で実行されている別のアプリケーションが S3 から同じファイルを処理することができます。

さらに、複数の S3 バケットまたはプレフィックスを単一の FSx for Lustre ファイルシステムにリンクすることで、複数のデータセットにわたって統一されたビューを実現できます。単一の FSx for Lustre ファイルシステムを作成し、複数の S3 データリポジトリ (S3 バケットまたはプレフィックス) を簡単にリンクできるようになりました。これは、複数の S3 バケットまたはプレフィックスを使用してデータレイクへのアクセスを整理および管理したり、パブリック S3 バケット (数百のパブリックデータセットなど) からファイルにアクセスしたり、ジョブ出力を別の S3 バケットに書き込んだり、より大きな FSx を複数の S3 データセットにリンクされた Lustre ファイルシステムは、スケールアウトのパフォーマンスを向上させます。

仕組み
FSx for Lustre ファイルシステムを作成して、Amazon Elastic コンピューティングクラウド (Amazon EC2) インスタンスに添付しましょう。データ転送コストを最小限に抑えるため、ファイルシステムとインスタンスが同じ VPC サブネット内にあることを確認します。ファイルシステムセキュリティグループは、インスタンスからのアクセスを許可する必要があります。

AWS マネジメントコンソールを開き FSx に移動し、[ファイルシステムの作成] を選択します。次に、 Lustre 用 Amazon FSx を選択します。ここでは、ファイルシステムを作成するためのオプションをすべて説明しているわけではありません。ファイルシステムの作成方法については、ドキュメントを参照してください。[S3 からのデータのインポート] と [S3 へのデータのエクスポート] が選択されていることを確認します。

Lustre-S3 同期を有効にするファイルシステムの作成には数分かかります。ステータスが ✅ 使用可能になったら、[データリポジトリ] タブに移動し、[データリポジトリの関連付けの作成] を選択します。

データリポジトリパス (ソース S3 バケット) とファイルシステムパス (ファイルシステム内でバケットがインポートされる場所) を選択します。

FSx Lustre データリポジトリ

次に、[インポートポリシー] と [エクスポートポリシー]を選択します。ファイル/オブジェクトの作成、更新、および削除時期を同期できます。[作成] を選択します。

FSx Lustre データリポジトリのインポートポリシー

自動インポートを使用する場合、FSx for Lustre クラスターと同じ AWS リージョンに S3 バケットも提供するようにします。FSx for Lustre は、自動エクスポートやその他のすべての機能のために、異なる AWS リージョンの S3 バケットにリンクすることをサポートしています。

コンソールを使用して、データリポジトリの関連付けの一覧が表示されます。インポートタスクのステータスが ✅ Succeededになるのを待ちます。多数のオブジェクトを持つ S3 バケットにファイルシステムをリンクする場合、データリポジトリの関連付けの作成中に [リポジトリからのメタデータのインポート] を省き、ワークロードに必要な S3 バケット内の選択したプレフィックスからメタデータをロードすることがインポートタスクを使ってできます。

FsX for lustre-メタデータリポジトリタスク

同じ VPC サブネットに EC2 インスタンスを作成します。さらに、FSx for Lustre クラスターセキュリティグループが EC2 インスタンスからのイングレストラフィックを承認していることを確認します。SSH を使用してインスタンスに接続し、次のコマンドを入力します (コマンドの先頭には、シェルプロンプトの一部である $ 記号が付きます)。

# カーネルのバージョンを確認してください。バージョン 4.14.104-95.84 以上が必要です 
$ uname-r
4.14.252-195.483.amzn2.aarch64

# lustre clientをインストールする 
$ sudo amazon-linux-extras install -y lustre2.10
lustre-clientをインストールする
...
インストール済み:
  lustre-client.aarch64 0:2 .10.8-5.amzn2                                                                                                                        

COMPLETE

# マウントポイントを作成する 
$ sudo mkdir /fsx

ファイル共有をマウントする 
$ sudo mount-t lustre-o noatime、flock fs-00... 9d.fsx.us-east-1.amazonaws.com @tcp: /ny345bmv /fsx

# マウントが成功したことを確認
$ マウント 
...
172.0.0.0 @tcp: /ny345bmv on /fsx lustre (rw、noatime、flock、lazystatfs)

次に、ファイルシステムに S3 オブジェクトが含まれていることを確認し、 touch コマンドを使用して新しいファイルを作成します。

Fsx Lustre-ファイルシステムのチェック

S3 で AWS コンソールに切り替え、次にバケット名に切り替え、ファイルが同期されたことを確認します。

Fsx Lustre-チェック s3

コンソールを使用して、S3 からファイルを削除します。そして、当然、数秒後にファイルも FSx ファイルシステムから削除されます。

Fsx Lustre-ファイルシステムのチェック-削除済み

ご利用になれるリージョンと料金
これらの新機能は、Amazon FSx for Lustre ファイルシステムでは追加費用なしで利用できます。自動エクスポートと複数のリポジトリは、米国東部 (バージニア北部)、米国東部 (オハイオ)、米国西部 (オレゴン)、カナダ (中部)、アジアパシフィック (東京)、ヨーロッパ (フランクフルト)、およびヨーロッパ (アイルランド) の永続的な 2 つのファイルシステムでのみ使用できます。S3 の削除および移動されたオブジェクトをサポートする自動インポートは、2020 年 7 月 23 日以降に作成されたファイルシステムで、FSx for Lustre が利用可能なすべてのリージョンで使用できます。

AWS マネジメントコンソール、AWS コマンドラインインターフェイス (CLI)、および AWS SDKs を使用して、S3 の更新を自動的にインポートするようにファイルシステムを設定できます。

Amazon FSx Lustre ファイルシステムで S3 データリポジトリを使用する方法の詳細をご覧ください

追加情報
あなたが読んでいる間にもう一つ。また、本日、Lustre ファイルシステム向けの次世代の FSx も発売しました。FSx for Lustre 次世代ファイルシステムは、 AWS Graviton プロセッサ上に構築されています。前世代のファイルシステムと比較して、テラバイトあたり最大 5 倍のスループット(1 テラバイトあたり最大 1 Gb/秒)を実現し、スループットのコストを最大 60% 削減するように設計されています。今日それを試してみてください!

— seb

PS: 同僚のマイケルが、FSx for Lustre の強化された S3 統合の動作を示すデモビデオを録画しました。こちらをご覧ください)。

原文はこちらです。