Amazon EFS Documentation

Amazon Elastic File System (Amazon EFS) is designed to provide serverless, elastic file storage that lets you share file data without provisioning or managing storage capacity and performance. It can be used with AWS services and on-premises resources, and is designed to scale without disrupting applications.

Managed service

Amazon EFS is a managed service that is designed to provide NFS shared file system storage for Linux workloads. Amazon EFS helps you simplify creating and configuring file systems. It is designed to handle tasks like managing file servers and storage, updating hardware, configuring software, and performing backups. You can create a fully managed file system by using the AWS Management Console, the AWS CLI, or an AWS SDK.

Availability & durability

Amazon EFS is designed to be highly available. By default, Amazon EFS is designed to redundantly store file system objects (i.e. directory, file, and link) across multiple Availability Zones (AZs) for file systems using Amazon EFS Standard storage classes. If you select Amazon EFS One Zone storage classes, Amazon EFS is designed to redundantly store your data within a single AZ. Amazon EFS is designed to sustain concurrent device failures by quickly detecting and repairing lost redundancy. In addition, Amazon EFS is designed to enable a file system using Standard storage classes to be accessed concurrently from all AZs in the region where it is located. You can architect your application for failover from one AZ to other AZs in the region. Mount targets are designed to be highly available within an AZ for all Amazon EFS storage classes.

Elastic & scalable

With Amazon EFS, storage capacity is designed to grow and shrink as you add and remove files, dynamically providing the storage capacity to applications as they need it. Amazon EFS is designed to be highly scalable both in storage capacity and throughput performance. It is designed to allow parallel access from Amazon EC2 instances to your data. Amazon EFS is also designed to deliver file operations with consistent, low latencies.

Amazon EFS is designed to provide the throughput, I/O operations per second, and low latency needed for a broad range of workloads. Amazon EFS performance is designed to scale as a file system grows and can burst to higher throughput levels for short periods of time to help support the unpredictable performance needs of file workloads. You can choose to deliver performance independent of your file system size with elastic throughput or provisioned throughput modes.

Storage classes & lifecycle management

Amazon EFS offers Standard and One Zone storage classes for both frequently accessed and infrequently accessed files. The Standard and One Zone storage classes are both designed to deliver consistent low latencies. The Amazon EFS Standard-Infrequent Access (EFS Standard-IA) and Amazon EFS One Zone-Infrequent Access (EFS One Zone-IA) storage classes are intended for files accessed less frequently. You can help reduce your storage costs by enabling EFS Lifecycle Management for your file system and choosing an age-off policy (1, 7, 14, 30, 60, or 90 days). You can also set a policy to move accessed files from the infrequent access storage classes to the performance-oriented storage classes. With Amazon EFS Lifecycle Management, you can automatically move files between EFS Standard and EFS Standard-IA storage, or between EFS One Zone and EFS One Zone-IA storage.

Throughput modes

By default, Amazon EFS file systems are designed to provide throughput that scales with the amount of storage in your file system and to support bursting to higher levels for limited periods within a day. For more throughput-intensive workloads, Amazon EFS offers two options that can deliver higher levels of performance independent of your file system storage: elastic throughput and provisioned throughput. 

Amazon EFS Replication

Amazon EFS Replication allows you to replicate your file system data to a second file system in another AWS Region within the same Region. You can use the Amazon EFS console, AWS CLI, and APIs to enable replication on an existing file system. Amazon EFS Replication is designed to provide a recovery point objective (RPO) and a recovery time objective (RTO) of minutes.

You can also set up your destination file system independent of your source file system. You can select the destination file system’s lifecycle management policy, backup policies, provisioned throughput, mount targets, and access points independent of the source file system. You can also replicate from a source file system created using Amazon EFS Standard storage classes to a destination file system created using Amazon EFS One Zone storage classes.

Shared file system with NFS support

Amazon EFS is designed to provide access for thousands of connections for Amazon Elastic Compute Cloud (EC2) instances, as well as AWS container and serverless compute services. Amazon EFS can also simultaneously support on-premises servers using a traditional file permissions model, file locking, and hierarchical directory structure via the NFS protocol. Amazon EC2 instances can access your file system across AZs and Regions while on-premises servers can access via AWS Direct Connect or AWS VPN services.

Containers & serverless file storage

Amazon EFS is integrated with containers and serverless compute services from AWS that may require shared storage for latency-sensitive, and IOPS-heavy workloads. Amazon EFS is designed to provide applications running on Amazon Elastic Container Service (Amazon ECS), Amazon Elastic Kubernetes Service (Amazon EKS), AWS Fargate, and AWS Lambda with access to shared file systems for stateful workloads.

Security & compliance

You can manage network access to your file systems using Amazon Virtual Private Cloud (Amazon VPC) security group rules, and you can manage application access to your file systems using AWS Identity and Access Management (IAM) policies and Amazon EFS Access Points.

Encryption

Amazon EFS offers you the ability to encrypt data at rest and in transit. Data at rest can be transparently encrypted using encryption keys managed by the AWS Key Management Service (KMS). Encryption of data in transit uses Transport Layer Security (TLS).

Additional Information

For additional information about service controls, security features and functionalities, including, as applicable, information about storing, retrieving, modifying, restricting, and deleting data, please see https://docs.aws.amazon.com/index.html. This additional information does not form part of the Documentation for purposes of the AWS Customer Agreement available at http://aws.amazon.com/agreement, or other agreement between you and AWS governing your use of AWS’s services.