Day 3: Deep Dive into Amazon EFS (Elastic File System) β Shared Storage in AWS

Today was all about learning and implementing Amazon EFS β a fully managed, scalable, and serverless file system offered by AWS. This was one of the most interesting parts of my DevOps journey so far because it ties directly into real-world infrastructure where high availability and scalability are critical.
What is Amazon EFS?
Amazon EFS (Elastic File System) is a cloud-native, NFS-based file system that you can mount to multiple EC2 instances across different Availability Zones. Itβs designed for scalability, shared access, and automatic storage management.
Unlike EBS (Elastic Block Store), which can be attached to only one EC2 instance at a time, EFS allows concurrent access from multiple EC2s, making it perfect for applications like:
Web servers (e.g., WordPress)
Shared CMS platforms
Scalable file-based workloads
Container storage (Kubernetes volumes)
π EBS vs EFS: My Key Learnings
Feature | EBS | EFS |
Type | Block Storage | File Storage (NFS) |
Instance Attachment | Single EC2 | Multiple EC2s |
Scalability | Manual | Automatic |
Performance | Based on volume size/type | General Purpose / Max I/O |
Use Cases | Databases, boot volumes | Web content, media, shared apps |
Access | One AZ | Multi-AZ |
π Conclusion: Use EFS when you need shared access, and EBS when you need high-speed single-instance performance (like databases).
ποΈ Hands-on Lab β Creating and Mounting EFS
Hereβs what I did step-by-step using AWS Free Tier:
β Step 1: Created an EFS File System
Navigated to the EFS section in the AWS Console
Chose default VPC and enabled mount targets across 2 AZs
β Step 2: Launched Two EC2 Instances
Used Amazon Linux 2 AMIs
Placed both in the same VPC and AZs as the EFS
β Step 3: Installed NFS Utilities
sudo yum install -y nfs-utils
β Step 4: Mounted the EFS on Each EC2
sudo mkdir /mnt/efs
sudo mount -t nfs4 -o nfsvers=4.1 fs-xxxxxx.efs.ap-south-1.amazonaws.com:/ /mnt/efs
β Step 5: Verified Shared Access
Created a file from Instance A
It instantly appeared in Instance B β super cool to see shared storage in real time!
π§ What I Learned
EFS is ideal for shared, distributed file systems
Mount Targets must be created in each Availability Zone
NFS protocol runs on port 2049 β your security group must allow it
Throughput can be bursting or provisioned, depending on workload
πΌ Why It Matters to My DevOps Career
This was more than just a lab β it gave me insight into:
Real production design patterns
Using Linux + AWS together efficiently
How shared infrastructure works for scalable apps
As someone actively working toward a role in Cloud/DevOps Engineering, mastering EFS gives me the confidence to talk about high-availability architectures and even design them from scratch.
If youβre a recruiter or engineer looking for DevOps talent who is serious, hands-on, and documenting every step of the journey, Iβd love to connect!
Thanks for reading! Letβs keep building β one service at a time.
Subscribe to my newsletter
Read articles from Akanksha directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
