AWS Cloud Fundamentals
Learn AWS Cloud Fundamentals from a Java Developer and Solution Architect perspective. Understand Cloud Computing, AWS Global Infrastructure, Regions, Availability Zones, Edge Locations, Shared Responsibility Model, Service Models, Pricing, and Core AWS Services.
Table of Contents
- What is Cloud Computing?
- Why AWS?
- AWS Global Infrastructure
- Regions
- Availability Zones
- Data Centers
- Edge Locations
- Shared Responsibility Model
- Cloud Service Models
- AWS Core Services
- Pricing Models
- Banking Architecture Example
- AWS Account Best Practices
- Developer Roadmap
- Architect Roadmap
- Key Takeaways
What is Cloud Computing?
Cloud Computing is the on-demand delivery of computing resources over the internet.
Instead of buying servers, networking equipment, and storage devices, organizations rent resources as needed.
Traditional Infrastructure
flowchart LR
A[Purchase Hardware]
--> B[Install Servers]
--> C[Configure Network]
--> D[Deploy Application]
--> E[Maintain Infrastructure]
Challenges
- High upfront investment
- Long procurement cycles
- Hardware failures
- Capacity planning
- Disaster recovery complexity
Cloud-Based Infrastructure
flowchart LR
Developer --> AWS[AWS Cloud]
AWS --> Compute
AWS --> Storage
AWS --> Database
AWS --> Security
Benefits
- Pay-as-you-go
- Elastic scaling
- Global availability
- Reduced operational overhead
- Faster innovation
Why AWS?
AWS is the largest cloud provider in the world.
Benefits:
- Global infrastructure
- Hundreds of managed services
- Enterprise security
- High availability
- Massive scalability
- AI and Machine Learning services
AWS Global Infrastructure
AWS infrastructure is organized into Regions, Availability Zones, Data Centers, and Edge Locations.
flowchart TB
AWS["🌎 AWS"]
AWS --> Region["🌍 Region"]
Region --> AZ["🏢 Availability Zone"]
AZ --> DC["🖥️ Data Center"]
AWS --> Edge["📍 Edge Location"]
Regions
A Region is a physical geographic area.
Examples:
- us-east-1 (Virginia)
- us-west-2 (Oregon)
- eu-west-1 (Ireland)
- ap-south-1 (Mumbai)
Region Diagram
flowchart LR
World --> USEast["🇺🇸 us-east-1"]
World --> USWest["🇺🇸 us-west-2"]
World --> Europe["🇮🇪 eu-west-1"]
World --> India["🇮🇳 ap-south-1"]
Why Regions Matter?
- Latency
- Compliance
- Cost
- Disaster Recovery
Availability Zones
A Region contains multiple Availability Zones.
flowchart TB
Region["🌍 us-east-1"]
Region --> AZA["🏢 AZ-A"]
Region --> AZB["🏢 AZ-B"]
Region --> AZC["🏢 AZ-C"]
Each AZ has:
- Independent power
- Independent networking
- Independent cooling
Multi-AZ Architecture
flowchart TB
ALB["⚖️ Load Balancer"]
ALB --> App1["EC2 AZ-A"]
ALB --> App2["EC2 AZ-B"]
ALB --> App3["EC2 AZ-C"]
Benefits:
- High Availability
- Fault Tolerance
- Automatic Failover
Data Centers
Each Availability Zone contains one or more Data Centers.
flowchart TB
AZ["Availability Zone"]
AZ --> DC1["Data Center 1"]
AZ --> DC2["Data Center 2"]
Data Centers contain:
- Servers
- Storage
- Networking
- Cooling
- Power Systems
Edge Locations
Edge Locations reduce latency by bringing content closer to users.
Used by:
- CloudFront
- Route53
- Global Accelerator
flowchart LR
User["👤 Texas User"]
User --> Edge["📍 Dallas Edge"]
Edge --> Region["🌍 us-east-1"]
Benefits:
- Faster content delivery
- Lower latency
- Better user experience
Shared Responsibility Model
AWS and customers share security responsibilities.
AWS Responsibilities
- Physical Security
- Hardware
- Networking
- Data Centers
Customer Responsibilities
- Users
- Data
- Applications
- Access Management
flowchart LR
AWS --> Infrastructure
Customer --> Applications
Customer --> Users
Customer --> Data
Cloud Service Models
IaaS
Example: EC2
You manage:
- Operating System
- Runtime
- Application
AWS manages:
- Hardware
PaaS
Example: Elastic Beanstalk
You manage:
- Application
AWS manages:
- Infrastructure
- Runtime
- Operating System
Serverless
Example: Lambda
You only write code.
AWS manages everything else.
flowchart LR
EC2["🖥️ EC2<br/>IaaS"]
Beanstalk["☁️ Elastic Beanstalk<br/>PaaS"]
Lambda["⚡ Lambda<br/>Serverless"]
EC2 --> M1["You Manage:<br/>OS<br/>Runtime<br/>Application"]
Beanstalk --> M2["You Manage:<br/>Application"]
Lambda --> M3["You Manage:<br/>Code Only"]
AWS Core Services
Compute
- EC2
- ECS
- EKS
- Lambda
Storage
- S3
- EFS
Database
- RDS
- Aurora
- DynamoDB
Networking
- VPC
- Route53
- ALB
Security
- IAM
- KMS
- Cognito
mindmap
root((AWS))
Compute
EC2
ECS
Lambda
Storage
S3
EFS
Database
RDS
Aurora
DynamoDB
Networking
VPC
Route53
Security
IAM
KMS
Real World Banking Architecture
flowchart TB
Customer
Customer --> Route53
Route53 --> ALB
ALB --> SpringBoot
SpringBoot --> RDS
SpringBoot --> S3
SpringBoot --> SNS
Use Cases:
- Customer Login
- Transactions
- Notifications
- Statement Storage
AWS Pricing Models
On-Demand
Pay for actual usage.
Reserved
Commit usage for 1–3 years.
Spot
Use unused AWS capacity.
flowchart LR
NeedCompute --> OnDemand
NeedCompute --> Reserved
NeedCompute --> Spot
AWS Account Best Practices
- Enable MFA
- Never use root account daily
- Create IAM users
- Enable billing alerts
- Follow least privilege principle
- Enable CloudTrail
AWS Learning Roadmap
flowchart TB
Foundations --> Compute
Compute --> Storage
Storage --> Database
Database --> Networking
Networking --> Security
Security --> DevOps
DevOps --> Observability
Observability --> Serverless
Serverless --> AI
Key Takeaways
- Cloud Computing enables on-demand infrastructure.
- AWS Regions provide geographic isolation.
- Availability Zones provide high availability.
- Edge Locations reduce latency.
- Shared Responsibility Model defines security ownership.
- EC2, S3, RDS, VPC, and IAM are foundational services.
- Understanding AWS fundamentals is critical before learning advanced services.