[アップデート]Amazon FSx for Lustreで複数のS3バケットをリンクできるようになりました #reinvent

2021.12.01

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

 

Amazon FSx for Lustreの拡張されたAmazonS3統合に関するAWSからのアナウンスは以下。

 

概要

Amazon FSx for Lustreとは?

Amazon FSx for Lustreはフルマネージドサービスであり、高性能なLustreファイルシステムを簡単かつ費用対効果の高い方法で起動して実行できます。FSx for Lustre は POSIX に準拠しているため、現在の Linux ベースのアプリケーションを使用できます。FSx for Lustre は、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスおよび Amazon Elastic Kubernetes Service (Amazon EKS) で実行されているコンテナからアクセスできます。

 

Amazon FSx for Lustreのアップデート

Amazon S3と統合するためのAmazon FSx for Lustreの2つの追加機能が追加されました。

  • ファイルシステムとAmazonS3の完全な双方向同期。
  • ファイルシステムを複数のS3バケットと同期します。

これらの新機能は、ファイルベースのワークフローとオブジェクトベースのワークフローの両方を使用してS3バケットのデータを同時に処理する必要がある場合に役立ちます。ワークロードでS3バケットへのファイルシステムアクセスが必要な場合は、FSx for Lustreを使用してS3バケットをファイルシステムにリンクし、データを双方向で同期させることができます。

 

 

やってみた

EC2インスタンスとセキュリティグループの作成

  • 次の設定でLinuxEC2インスタンスを作成しておきます。
    • AMI : Amazon Linux 2 AMI
    • インスタンスタイプ : t2.micro
    • セキュリティグループのインバウンドルール : SSH - Port 22
  • Amazon FSx for Lustreのセキュリティグループを作成しておきます。
    • セキュリティグループ名 : fsx-ec2
    •  インバウンドルール1
      • Protocol : TCP
      • Port : 988
      • Source : EC2インスタンスのセキュリティグループId
    • インバウンドルール1
      • Protocol : TCP
      • Port : 1021-1023
      • Source : EC2インスタンスのセキュリティグループId

 

FSx for Lustre ファイルシステムの作成

  • Amazon FSx コンソールで、Create file systemを選択しておきます。
  • ファイルシステムタイプはFSx for Lustreを選択します。

 

 

  • ファイルシステムの詳細で、次のオプションを選択しておきます。
    • デプロイとストレージタイプ :永続的、SSD
    • ストレージ単位あたりのスループット: 1000 MB/s/TiB
    • ストレージ容量 : 2.4 TiB
    • VPC セキュリティグループ : 前の手順で作成されたセキュリティグループ[fsx-ec2]

 

 

  • データリポジトリの Import/Exportで[S3 からのデータのインポートと S3 へのデータのエクスポート]を選択しておきます。

 

データリポジトリの関連付けの作成

  • 2つのs3バケットを作成しておきます。
  • ファイルシステムコンソールで、前に作成したファイルシステムを選択して、データリポジトリタブを選択します。
  • データリポジトリの関連付けペインで、[データリポジトリの関連付けの作成]を選択しておきます。

 

 

  • 最初のバケットのデータリポジトリ関連付けを作成しておきます。ファイルパスとデータパスを入力します。

 

  • インポートポリシーとエクスポートポリシーを選択して、作成をクリックしておきます。

 

  • 同様に、2番目のデータリポジトリ関連付けを作成しておきます。

 

ファイルシステムをEC2インスタンスにマウントする

  • ec2インスタンスに接続しておきます。
  • このコマンドを使用してLustreクライアントをインストールします。
sudo amazon-linux-extras install -y lustre2.10

 

  • 次のコマンドを使用して、新しいディレクトリを作成し、ファイルシステムをec2にマウントしておきます。
# create a directory  
$ sudo mkdir /fsx

# mount the file system 
$ sudo mount -t lustre -o noatime,flock fs-00000000000.fsx.us-east-1.amazonaws.com@tcp:/ny345bmv /fsx

 

  • ファイルシステムがマウントされているので、/ fsxディレクトリに両方のバケットが見ることができます。

 

インポートデータリポジトリタスクの作成

  • 両方のデータリポジトリ関連付けを選択し、[インポートタスク]をクリックしておきます。

 

  • 作成をクリックして、タスクのインポートを開始します。

 

  • コンソールでデータリポジトリタスクを見ることができます。

 

  • インポートタスクの後、両方のS3バケットのファイルを確認できます。

 

ファイルシステムとS3バケット同期の確認

ファイルシステムからS3バケットへの同期する

  • ファイルシステムに新しいファイルを作成しておきます。

 

  • S3コンソールでバケットをチェックし、ファイルが同期されていることを確認します。

 

複数のS3バケット同期する

  • ファイルを最初のバケットから2番目のバケットに移動します。

 

  • S3コンソールから、ファイルが最初のバケットから2番目のバケットに移動されたことを確認できます。

 

S3バケットからファイルシステムに同期する

  • コンソールからS3バケットにファイルを追加しておきます[r1.png]。

 

  • ファイルがファイルシステムで同期されていることを確認できます。これは双方向の同期を示しています。

 

まとめ

Amazon FSx for Lustreの拡張されたAmazonS3統合をしてみました。双方向同期と複数のS3バケットを使用したファイルシステムの同期をしてみました。