メニュー
AWS Elastic Beanstalk
開発者ガイド (API Version 2010-12-01)

Amazon Elastic File System で Elastic Beanstalk を使用する

Amazon Elastic File System を使用すると、複数のアベイラビリティーゾーンでインスタンスによってマウントできるネットワークファイルシステムを作成できます。Amazon EFS ファイルシステムは、デフォルトまたはカスタム VPC のネットワークを介してアクセスを制御するためにセキュリティグループを使用する AWS リソースです。

Elastic Beanstalk 環境で Amazon EFS を使用して、アプリケーションのユーザーによってアップロードまたは変更されたファイルを保存する共有ディレクトリを作成できます。アプリケーションはマウントされた Amazon EFS ボリュームをローカルストレージのように扱うことができるため、アプリケーションコードを変更して複数のインスタンスにスケールする必要はありません。

Amazon EFS の詳細については、Amazon Elastic File System ユーザーガイドを参照してください。

設定ファイル

Elastic Beanstalk は、Amazon EFS ファイルシステムを作成およびマウントするために使用できる設定ファイルを提供します。環境の一部として Amazon EFS ボリュームを作成するか、作成した Amazon EFS ボリュームを Elastic Beanstalk とは関係なくマウントできます。

  • storage-efs-createfilesystem.configResources キーを使用して、Amazon EFS で新しいファイルシステムとマウントポイントを作成します。環境のすべてのインスタンスは、共有されたスケーラブルなストレージのため、同じファイルシステムに接続できます。storage-efs-mountfilesystem.config を使用して、各インスタンスでファイルシステムをマウントできます。

    内部リソース

    設定ファイルで作成するリソースは環境のライフサイクルと関連していて、環境を終了するか、設定ファイルを削除すると失われます。

  • storage-efs-mountfilesystem.config – 環境のインスタンスのローカルパスに、Amazon EFS ファイルシステムをマウントします。storage-efs-createfilesystem.config で環境の一部として、または Amazon EFS コンソール、AWS CLI、AWS SDK を使用して環境の外部に、ボリュームを作成できます。

設定ファイルを使用するには、最初に storage-efs-createfilesystem.config を使用して Amazon EFS ファイルシステムを作成します。設定ファイルの指示に従って、ソースコードの .ebextensions ディレクトリにファイルを追加し、VPC でファイルシステムを作成します。

更新されたソースコードを Elastic Beanstalk 環境にデプロイし、ファイルシステムが正常に作成されることを確認します。次に、storage-efs-mountfilesystem.config を追加し、環境のインスタンスにファイルシステムをマウントします。2 つの別のデプロイでこの操作を行うことで、マウントオペレーションに失敗した場合でも、ファイルシステムはそのまま残ります。同じデプロイで両方の操作を行った場合、デプロイが失敗すると、いずれかのステップの問題によりファイルシステムは終了します。

サンプルアプリケーション

また、Elastic Beanstalk は共有ストレージ用に Amazon EFS を使用するサンプルアプリケーションも提供します。2 つのプロジェクトは、標準の WordPress または Drupal インストーラーとともに使用して、ロードバランシングされた環境でブログまたは他のコンテンツ管理システムを実行できる設定ファイルです。ユーザーが写真またはその他のメディアをアップロードすると、Amazon EFS ファイルシステムに保存されるため、アップロードされたファイルをプラグインを使用して Amazon S3 に保存する必要がなくなります。