Module Objectives
By the end of this module, learners will be able to:
- Understand AWS storage services from a developer perspective
- Select the right storage option for different application patterns
- Use Amazon S3 programmatically and securely
- Configure EBS and EFS for compute workloads
- Apply IAM permissions and encryption
- Handle durability, availability, and cost
1. Overview of AWS Storage Options
Why Multiple Storage Services?
Different applications need:
- Object vs file vs block storage
- High durability vs low latency
- Shared vs single-instance access
Storage Type Service
Object Amazon S3
Block Amazon EBS
File Amazon EFS
Hybrid / Transfer DataSync, Storage Gateway (brief mention)
2. Amazon S3 (Simple Storage Service)
What is Amazon S3?
- Object storage
- Virtually unlimited scale
- 11 9βs durability
Core S3 Concepts
- Bucket
- Object
- Key
- Region-scoped buckets
- Global namespace
S3 Storage Classes
Class Use Case
Standard Frequent access
IA Infrequent access
One Zone-IA Non-critical data
Glacier Instant Archive, quick access
Glacier Flexible Archive
Glacier Deep Archive Lowest cost
π Storage class affects cost, not durability.
- S3 Security & Access Control Access Mechanisms
- IAM policies
- Bucket policies
- ACLs (legacy, discouraged)
Encryption Options
- SSE-S3
- SSE-KMS
- Client-side encryption
Public Access
- Block Public Access (default ON)
- Bucket policy controls
4. Hands-On Lab 1: S3 for Developers
Objective
Create a secure S3 bucket and access it programmatically.
Steps
Create S3 bucket
Enable:
Versioning
Default encryption
Upload sample object
Attach IAM role/policy:
{
"Effect": "Allow",
"Action": ["s3:GetObject", "s3:PutObject"],
"Resource": "arn:aws:s3:::my-dev-bucket/*"
}
Access bucket via AWS CLI or SDK
Validation
Upload and download objects
Access denied without permissions
5. S3 for Application Patterns
Common Developer Use Cases
- Static website hosting
- Application artifacts
- Logs and backups
- Data lake
Event-Driven Patterns
- S3 β Lambda trigger
- S3 β EventBridge
6. Amazon EBS (Elastic Block Store)
What is EBS?
- Block storage for EC2
- Attached to one instance at a time
- Key EBS Concepts
- Volume
- Snapshot
- Availability Zone scoped
Use Cases
- Databases on EC2
- Boot volumes
- Low-latency workloads
- Hands-On Lab 2: EBS Volume with EC2 Objective
Attach and mount EBS volume to EC2.
Steps:
8. Amazon EFS (Elastic File System)
What is EFS?
- Managed NFS file system
- Shared across multiple EC2 instances
- Automatically scales
Key Characteristics
- Multi-AZ
- POSIX-compliant
- Regional service
Use Cases
- Shared application data
- Content management systems
- Microservices shared storage
π EFS supports concurrent access from multiple EC2s.
9. Cost & Performance Considerations
Cost Drivers
- Storage amount
- Access frequency
- Data transfer
- API requests (S3)
Performance Factors
- S3 prefix distribution
- EBS volume type
- EFS throughput mode
Use S3 for pre-signed url uploads
Track multi-part uploads
Top comments (0)