Amazon EFS で構築する共有ファイルストレージ - Lambda・ECS・EC2 からのマウントと設計指針

Amazon EFS のパフォーマンスモード選定、Lambda・ECS・EC2 からのマウント方法、ライフサイクル管理によるコスト最適化を解説します。

EFS の特徴と EBS・S3 との使い分け

EFS は NFS v4.1 準拠のマネージドファイルシステムで、複数のコンピューティングリソースから同時にマウントできる点が最大の特徴です。EBS は単一の EC2 インスタンスにアタッチするブロックストレージ (io2 のマルチアタッチを除く)、S3 はオブジェクトストレージで POSIX ファイルシステムとしてはマウントできません。複数のインスタンスやコンテナから同じファイルにアクセスする必要がある場合、EFS が唯一の選択肢です。CMS の共有メディアストレージ、機械学習のトレーニングデータ共有、CI/CD のビルドキャッシュ共有などのユースケースに適しています。

この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。

パフォーマンスモードとスループットモード

パフォーマンスモードは汎用モードと最大 I/O モードの 2 種類です。汎用モードはレイテンシが低く、ほとんどのワークロードに適しています。最大 I/O モードは数千のクライアントからの同時アクセスに最適化されていますが、レイテンシがやや高くなります。スループットモードは Elastic、プロビジョンド、バーストの 3 種類です。Elastic モードはアクセスパターンに応じてスループットが自動スケールし、最大 10 GiB/s のリードスループットを提供します。バーストクレジットの管理が不要なため、新規構築では Elastic モードを推奨します。プロビジョンドモードは一定のスループットを保証する必要がある場合に使用します。

ライフサイクル管理とコスト最適化

EFS のライフサイクル管理は、一定期間アクセスのないファイルを自動的に低頻度アクセス (IA) ストレージクラスに移行する機能です。IA ストレージクラスの料金は標準クラスの約 8% で、最大 92% のコスト削減が可能です。移行のトリガーは 1 日、7 日、14 日、30 日、60 日、90 日から選択できます。IA クラスのファイルにアクセスすると、読み取りごとにアクセス料金が発生しますが、アクセス頻度が低いファイルであればストレージ料金の削減効果が上回ります。Intelligent-Tiering を有効にすると、再びアクセスされたファイルを自動的に標準クラスに戻すことも可能です。

さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。

まとめ

EFS は複数のコンピューティングリソースから共有アクセスが必要なファイルストレージとして、AWS で唯一の POSIX 準拠マネージドサービスです。Elastic スループットモードとライフサイクル管理を組み合わせることで、パフォーマンスとコストの両方を最適化できます。Lambda や ECS からのマウントにより、サーバーレスアーキテクチャでも共有ファイルシステムを活用できます。

AWS の優位点

  • NFS v4.1 プロトコルで複数の EC2 インスタンス、ECS タスク、Lambda 関数から同時にマウントでき、共有ファイルシステムとして機能する
  • Elastic スループットモードはアクセスパターンに応じて自動スケールし、バーストクレジットの管理が不要
  • ライフサイクル管理で 30 日間アクセスのないファイルを自動的に IA (低頻度アクセス) ストレージクラスに移行し、最大 92% のコスト削減を実現する
  • Lambda 関数に EFS をマウントすることで、/tmp の 10 GB 制限を超える大容量の一時ファイル処理や、関数間でのファイル共有が可能になる
  • EFS レプリケーションで別リージョンに自動的にデータを複製し、RPO 15 分以内の DR 構成を構築できる

同じテーマの記事

AWS Backup Gateway でオンプレミス VMware VM を保護 - ハイブリッドバックアップ戦略 Backup Gateway による VMware 仮想マシンのバックアップ、リストア、AWS Backup との統合を解説します。 一元バックアップ管理 - AWS Backup で実現するデータ保護戦略 AWS Backup を活用した一元的なバックアップ管理を解説します。EC2、RDS、DynamoDB、EFS、S3 など複数の AWS サービスのバックアップを統合管理し、コンプライアンス要件を満たすデータ保護戦略の構築方法を紹介します。 Amazon Data Lifecycle Manager で自動化する EBS スナップショット管理 - ポリシー設計と保持戦略 DLM による EBS スナップショットの自動作成、保持ポリシー、クロスリージョンコピーの設定を解説します。 Amazon EBS のボリューム設計と運用 - gp3・io2 の選定基準とスナップショット戦略 Amazon EBS のボリュームタイプ選定、IOPS・スループットの設計指針、スナップショットによるバックアップ戦略を実践的に解説します。 Amazon EBS の暗号化とスナップショット共有 - クロスアカウント・クロスリージョンの設計 EBS のデフォルト暗号化、スナップショットのクロスアカウント共有、クロスリージョンコピーによる DR 設計を解説します。 Amazon FSx で選ぶマネージドファイルシステム - Lustre、Windows、ONTAP、OpenZFS の使い分け FSx の 4 つのファイルシステムタイプの特徴と使い分け、S3 連携、パフォーマンス設計を解説します。 Amazon S3 Glacier のアーカイブ戦略 - ストレージクラスの選定と取り出しオプション S3 Glacier Instant Retrieval、Flexible Retrieval、Deep Archive の選定基準、ライフサイクルポリシーによる自動階層化を解説します。 ハイブリッドストレージ - AWS Storage Gateway によるオンプレミスとクラウドの統合 AWS Storage Gateway を使ったオンプレミスとクラウドストレージの統合を解説。S3 File Gateway・FSx File Gateway・Volume Gateway・Tape Gateway の 4 タイプの使い分けと導入パターンを紹介します。 マネージドファイルシステム - Amazon FSx と EFS で実現する高性能な共有ストレージ Amazon FSx と Amazon EFS を活用したマネージドファイルシステムの構築・運用方法を解説します。 オブジェクトストレージ戦略 - Amazon S3 で実現するデータ管理の最適化 Amazon S3 を活用したオブジェクトストレージ戦略を解説します。 Amazon S3 のストレージ設計 - ストレージクラスの使い分けとライフサイクルポリシー S3 のストレージクラス選定、ライフサイクルポリシー、Intelligent-Tiering によるコスト最適化を解説します。