

# AWS Lambda 関数への S3 ファイルシステムのマウント
<a name="s3-files-mounting-lambda"></a>

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

![S3 バケット、S3 ファイルシステム、AWS Lambda 関数間のデータフローを示す図。](http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/images/S3Files_Lambda_dataflow.png)


## 前提条件
<a name="s3-files-mounting-lambda-prereqs"></a>

Lambda 関数に S3 ファイルシステムをマウントする前に、以下があることを確認してください。
+ **ファイルシステム、マウントターゲット、アクセスポイント** - S3 ファイルシステム、少なくとも 1 つのマウントターゲット、1 つのアクセスポイントが使用可能である必要があります。AWS マネジメントコンソールを使用してファイルシステムを作成すると、S3 Files はデフォルトの VPC 内の各アベイラビリティーゾーンに 1 つのマウントターゲットと、ファイルシステム用の 1 つのアクセスポイント (UID/GID 1000/1000、アクセスポイントスコープとして `/Lambda`) を自動的に作成します。
+ **Lambda 関数** - ファイルシステムをマウントするためのアクセス権を持つ実行ロールがある Lambda 関数。「*AWS Lambda ユーザーガイド*」の「[実行ロールとユーザーアクセス許可](https://docs.aws.amazon.com/lambda/latest/dg/configuration-filesystem-s3files.html#configuration-filesystem-s3files-permissions)」を参照してください。
+ **VPC** - Lambda 関数は、マウントターゲットと同じ VPC に存在する必要があります。Lambda 関数に割り当てるサブネットは、マウントターゲットがあるアベイラビリティーゾーンに存在する必要があります。
+ 必要な [セキュリティグループ](s3-files-prereq-policies.md#s3-files-prereq-security-groups) を設定しました。

## Lambda 関数に S3 ファイルシステムをマウントする方法
<a name="s3-files-mounting-lambda-steps"></a>
+ S3 コンソールで、左側のナビゲーションペインから **[ファイルシステム]** を選択します。
+ Lambda 関数にマウントするファイルシステムを選択します。
+ **[概要]** タブで、**[Lambda 関数にアタッチ]** の下にある **[アタッチ]** を選択します。
+ ドロップダウンから使用可能な Lambda 関数を選択します。使用可能なリストには、マウントターゲットがある同じ VPC およびサブネット内の関数のみが表示されます。
+ ローカルマウントパスを指定します。
+ 複数のアクセスポイントがある場合は、アクセスポイントを選択します。
+ [**アタッチ**] を選択してください。これで、Lambda 関数を次回呼び出すときにファイルシステムがアタッチされます。

詳細については、「[AWS Lambda を使用した Amazon S3 Files アクセスの設定](https://docs.aws.amazon.com/lambda/latest/dg/configuration-filesystem-s3files.html)」を参照してください。

[Amazon CloudWatch](s3-files-monitoring-cloudwatch.md) を使用して、ファイルシステムのストレージ、パフォーマンス、クライアント接続、同期エラーをモニタリングできます。