・・・サーバーレスのNFS(Network File System)。
・サービスのジャンル:ファイルストレージ
・特徴:
- フルマネージドサービス
- サーバーレス(ストレージの基盤(サーバー、容量、性能の管理)を AWS が管理)
- 容量は、ペタバイト規模まで。
- ファイルの追加・削除に応じて自動的に拡大・縮小する
- 99.999999999%(イレブンナイン)の耐久性
- 99.99%(フォーナイン)の可用性
- NFS(Network File System)バージョン4(NFSv4.1 および NFSv4.0)に対応
- 複数のコンピューティング環境(EC2、ECS、EKS、Lambda、Fargate)から、同時に並列でアクセスできる
- Windows ベースの EC2 インスタンスでの利用は非対応(NFS のため)
・使用用途:
- Webサーバー環境、コンテンツ管理システム、ホームディレクトリ、一般的なファイル共有(低レイテンシーが必要な用途)
- コンテナ・サーバーレスアプリケーションのデータ共有(ECS / EKS / Fargate / Lambda)
- ビッグデータ分析
- メディアワークフロー
- データベースのバックアップ
- 変動の大きいワークロード(スループットが自動で増減する Elastic スループットが適する)
NFS(Network File System)
・・・ネットワーク越しにファイルシステムを共有するためのプロトコル、また、その規格を使ったファイル共有の仕組み
Amazon EFS の機能
Amazon EFS の仕組み
・・・EFS のデータには、AZごとのマウントターゲットを経由してアクセスする。クライアントはNFSでマウントして、通常のファイルシステムのように使う。
EFSの構成
- ファイルシステムというストレージの単位で管理
- VPCを指定して作成
- VPCの各AZにマウントターゲットが作られ、AZのすべてのEC2インスタンスがそのマウントターゲットを共有する
ファイルシステムの種類
EFS ファイルシステムタイプ
・・・冗長に保存するか(可用性と耐久性)の種類
| ファイルシステムタイプ | 特徴 | ユースケース |
|---|---|---|
| リージョンファイルシステム | リージョン内のすべてのAZにあるマウントターゲットから、同時にアクセスできる | 高い耐久性と可用性を必要とするデータ。 |
| 1 ゾーンファイルシステム | 単一AZ内の、1つのマウントターゲットのみをサポートする | 高い耐久性と可用性を必要としないデータ。 |
- オンプレミスからのアクセス:AWS Direct Connect または AWS VPN による接続が必要。NFS v4.1 でマウントする
- ネットワークアクセスは、VPCのセキュリティグループで制御する
- ファイルロック:NFS バージョン4の勧告的ロックに対応(1ファイルあたり最大512ロック)
- データ整合性:NFS の close-to-open 整合性を提供する
ストレージクラス
・・・データへのアクセス頻度(どのくらい使うか)と、それに合わせたコスト・速さの種類
| ストレージクラス | 特徴 |
|---|---|
| EFS Standard | SSDストレージを使用し、頻繁にアクセスされるファイル向けに最も低いレイテンシーを提供する。 |
| EFS Infrequent Access(IA) | 四半期に数回しかアクセスしないデータ向けの、コスト最適化されたクラス。ファイルごとに最小128 KiBの課金がある |
| EFS Archive | 年に数回以下しかアクセスしないデータ向けの、コスト最適化されたクラス。最小保存期間は90日。Elastic スループットのファイルシステムでのみ利用できる |
ライフサイクル管理
・・・ファイルシステムに設定したライフサイクルポリシーに従って、ストレージクラス間でデータを自動的に移行する機能。
- 既定では、30日間連続でアクセスがなければ IA へ、90日間連続でアクセスがなければ Archive へ移行する
- EFS Intelligent-Tiering を有効にすると、IA や Archive のファイルがアクセスされたときに、Standard へ戻される
パフォーマンスモード
・・・1回の操作あたりのレイテンシーと大量の並列処理への強さの性能の特性の種類
| モード | 特徴 | ユースケース |
|---|---|---|
| 汎用モード | デフォルト設定。 操作あたりのレイテンシーが最も低い。 すべてのファイルシステムで推奨されている。 1 ゾーンファイルシステムは常にこのモード |
|
| 最大 I/O モード | 各ファイル操作のレイテンシーがわずかに長くなるが、スループットが最大化する 旧世代のパフォーマンスタイプ。高度に並列化されたワークロード向け。 1 ゾーンファイルシステム、Elastic スループットのファイルシステムでは使えない |
高度に並列化された処理(ビッグデータ解析など)に適する |
スループットモード
・・・ファイルシステムが出せるスループットとその課金の種類
| モード | 特徴 | ユースケース | コスト |
|---|---|---|---|
| Elastic (推奨・既定) |
ワークロードに応じて自動でスケールする。 (最大 I/O モードでは使えない) |
スパイクがある、または予測できないワークロード。 平均スループットとピークの比率が5%以下のアプリケーション |
読み書きしたデータ量に応じて課金。バーストクレジットは適用されない |
| Provisioned | ファイルシステムの容量やバーストクレジットバランスに関係なく、スループットの値を指定できる | ワークロードの性能要件が分かっている場合。 平均とピークの比率が5%以上のアプリケーション |
含まれるベースラインを超えてプロビジョニングした分に課金 |
| Bursting | 使用しているファイルシステムの容量に応じてスループットが拡張される | ストレージ量に応じてスループットを増やしたい場合 | ベースラインは Standard ストレージ1 GiB あたり 50 KiBps。バーストは 1 TiB あたり最大 100 MiBps。 許可されたスループットの80%超を使う、またはバーストクレジットを使い切った場合は、Elastic か Provisioned への切り替えを検討する |
データ保護(暗号化・バックアップ・レプリケーション)
- 保管時の暗号化:AWS KMS が管理するキーで、透過的に暗号化される
- 転送中の暗号化:TLS(TLS 1.2)で保護される。アプリケーションの変更は不要
- AWS Backup:EFS のバックアップを一元管理・自動化できる。One Zone のファイルシステムは、AWS Backup で自動的にバックアップされる
- EFS レプリケーション:データとメタデータを、選択したリージョンの別のEFSファイルシステムへ、継続的かつ透過的に複製する。差分のみを転送し、RPO・RTO は分単位となるよう設計されている
アクセス制御
- IAM ポリシー:IAM による認可、およびNFSクライアントに対するIAM認可
- セキュリティグループ:VPCのセキュリティグループで、ネットワークアクセスを制御する
- EFS アクセスポイント:ユーザーやアプリケーションがEFSにアクセスするためのネットワークエンドポイント。POSIXのファイル・フォルダー権限を強制でき、アクセスはIAMポリシーで制御する
EFS と他のストレージの違い
| 項目 | EFS | EBS | S3 |
|---|---|---|---|
| ストレージの種類 | ファイルストレージ | ブロックストレージ | オブジェクトストレージ |
| 接続方法 | NFS でマウント(ファイルシステムインターフェイス) | EC2 に接続して使う | インターネットAPI経由でアクセス |
| 共有 | 最大数千のEC2インスタンスから共有してアクセスできる | 単一のインスタンス向け(最も低いレイテンシー) | APIでアクセスするオブジェクトとして利用 |
サービスコスト
料金は、使った分に応じた従量課金で、最低料金や初期費用はない。
| 課金の対象 | 内容 |
|---|---|
| ストレージ | 使用したプライマリストレージとバックアップストレージに課金される。ストレージクラス(Standard / IA / Archive)と、ファイルシステムタイプ(Regional / One Zone)ごとに料金が異なる |
| スループット | 既定の Elastic スループットは、読み書きしたデータ量に応じて課金される。Provisioned は、ベースラインを超えてプロビジョニングした分に課金される |
| IA・Archive へのアクセス | IA と Archive では、読み取りとティアリング(階層移動)のアクティビティに対して課金される |
| レプリケーション | 送信元と送信先の両方で、通常のストレージとアクティビティの料金に加え、データ転送料金がかかる |
| バックアップ | AWS Backup 経由で、バックアップストレージの使用量と、月の復元データ量に応じて課金される |
| データ転送 | AZをまたいだアクセスは、EC2のクロスAZデータ転送料金(0.01 USD/GB)が課金される。同じAZ内では課金されない。リージョンをまたぐ転送は、EC2のリージョン間転送料金が適用される |