Amazon Elastic File System (EFS)

Amazon Elastic File System (EFS) is a managed Amazon Web Services service used to create and scale NFS-based file storage systems for AWS and on-premises resources across multiple Availability Zones and regions.

Key points

  • Uses an EFS Mount Target to share a file system across multiple Availability Zones and Amazon VPCs.
  • Best suited for Linux-based workloads; described as serverless, fully elastic file storage that scales across multiple instances for parallel access, high throughput, and low-latency IOPS. Unlike Amazon Elastic Block Store (EBS), which attaches to a single instance in one Availability Zone, EFS can be mounted concurrently by thousands of EC2 instances across multiple AZs.
  • Linux only — EFS is a POSIX-compliant file system mounted over NFS by Linux-based EC2 instances and containers; it does not support Windows. Workloads that need Windows-native, SMB-based shared file storage should use Amazon FSx for Windows File Server instead.
  • Automatically scales storage capacity up to petabyte scale; supports file locking and strong data consistency.
  • Offers data encryption at rest and in transit using AWS Key Management Service (KMS) and TLS, respectively.
  • Uses POSIX permissions to control access to files and directories.
  • Storage classes: EFS Standard and EFS Standard-Infrequent Access (Standard-IA) (regional, replicated across multiple AZs); EFS One Zone and EFS One Zone-IA (single-AZ, lower cost); EFS Archive (lowest-cost class for data accessed a few times a year or less; requires Elastic throughput). IA and Archive storage charge a fee for each read/write, so they are only cost-effective when access is genuinely infrequent.
  • Performance modes:
    • General Purpose — default; lowest per-operation latency; used automatically for One Zone file systems.
    • Max I/O — previous-generation mode for highly parallelized workloads that can tolerate higher latency; not supported for One Zone file systems or file systems using Elastic throughput (older CLF-C02 material still frames Max I/O as the choice for high-throughput workloads).
  • Throughput modes:
    • Elastic Throughput — the default and AWS-recommended mode; automatically scales throughput up or down to match workload activity with no capacity to provision; billed on actual metadata and data read or written; best for spiky or unpredictable workloads (older CLF-C02 material predates this mode and presents Bursting and Provisioned as the only two options).
    • Provisioned Throughput — throughput is independent of the file system’s storage size; specify a known level of performance.
    • Bursting Throughput — throughput increases based on the file system’s storage size, earning burst credits when usage is below the baseline rate.
  • Lifecycle management policies move files between storage classes based on time since last access; the default policy transitions files from Standard into IA after 30 days and into Archive after 90 days, with an optional policy to move files back to Standard on first access.

Sources