View a markdown version of this page

AWS Lambda 関数への S3 ファイルシステムのマウント - Amazon Simple Storage Service

AWS Lambda 関数への S3 ファイルシステムのマウント

AWS Lambda 関数は実行時に利用可能なエフェメラルローカルストレージを提供しますが、機械学習の推論、データ処理、コンテンツ管理などの多くのサーバーレスワークロードには、大規模な参照データセット、共有ファイル、永続的ストレージへのアクセスが必要です。S3 ファイルシステムを Lambda 関数にアタッチすることで、関数呼び出し間でデータを簡単に共有したり、大きな参照データファイルを読み取ったり、関数出力を永続共有ストアに書き込んだりできます。これらはすべてローカルマウントパスを介して行われます。

S3 バケット、S3 ファイルシステム、AWS Lambda 関数間のデータフローを示す図。

前提条件

Lambda 関数に S3 ファイルシステムをマウントする前に、以下があることを確認してください。

  • ファイルシステム、マウントターゲット、アクセスポイント - S3 ファイルシステム、少なくとも 1 つのマウントターゲット、1 つのアクセスポイントが使用可能である必要があります。AWS マネジメントコンソールを使用してファイルシステムを作成すると、S3 Files はデフォルトの VPC 内の各アベイラビリティーゾーンに 1 つのマウントターゲットと、ファイルシステム用の 1 つのアクセスポイント (UID/GID 1000/1000、アクセスポイントスコープとして /Lambda) を自動的に作成します。

  • Lambda 関数 - ファイルシステムをマウントするためのアクセス権を持つ実行ロールがある Lambda 関数。「AWS Lambda ユーザーガイド」の「実行ロールとユーザーアクセス許可」を参照してください。

  • VPC - Lambda 関数は、マウントターゲットと同じ VPC に存在する必要があります。Lambda 関数に割り当てるサブネットは、マウントターゲットがあるアベイラビリティーゾーンに存在する必要があります。

  • 必要な セキュリティグループ を設定しました。

Lambda 関数に S3 ファイルシステムをマウントする方法

  • S3 コンソールで、左側のナビゲーションペインから [ファイルシステム] を選択します。

  • Lambda 関数にマウントするファイルシステムを選択します。

  • [概要] タブで、[Lambda 関数にアタッチ] の下にある [アタッチ] を選択します。

  • ドロップダウンから使用可能な Lambda 関数を選択します。使用可能なリストには、マウントターゲットがある同じ VPC およびサブネット内の関数のみが表示されます。

  • ローカルマウントパスを指定します。

  • 複数のアクセスポイントがある場合は、アクセスポイントを選択します。

  • [アタッチ] を選択してください。これで、Lambda 関数を次回呼び出すときにファイルシステムがアタッチされます。

詳細については、「AWS Lambda を使用した Amazon S3 Files アクセスの設定」を参照してください。

Amazon CloudWatch を使用して、ファイルシステムのストレージ、パフォーマンス、クライアント接続、同期エラーをモニタリングできます。