Amazon EFS (Elastic File System) is a file storage service for EC2 instances. EFS is easy to use and provides a simple interface that allows you to create and configure file systems quickly and easily. With EFS, storage capacity is elastic, growing and shrinking automatically as you add and remove files, so you applications have the storage they need, when they need it.
EFS Features
- Supports the NFS version 4 (NFSv4) protocol (Linux only??)
- You only pay for the storage you use (no pre-provisioning required)
- Can scale up to petabytes
- Can support thousands of concurrent NFS connections
- Data is stored across multiple AZ’s within a region.
- EFS is Block Based, not Object based.
- Read after Write Consistency (Similar to S3)
- EC2 instances MUST be in the same Security Group as the EFS in order to access.
- EFS Supports Encryption At Rest (Must be enabled at time of provisioning!)
Mounting the EFS
- Storage > EFS > Select EFS > Amazon EC2 mount instructions
- No additional software is required if using an AWS Linux AMI
- Need to add to fstab to ensure it will remount if the instance is rebooted.
Use Cases
- Essentially, this is a file server – a centralized file repository
- Great for Auto Scaling. You can auto configure your new instances to read the files and be up and running without the need to copy a single file to the instance!
- This must work for Sessions, eh?
- Can apply user level permissions at both file and directory level permissions. Can change the permissions on the directory directly (chown 750 …)
- EFS allows multiple instances to mount it. EBS only allows a single instance to mount it.