Introduction to Cloud Computing
What is Cloud Computing?
Cloud computing is the on-demand delivery of computing resources via the Internet. Instead of buying and managing your own physical servers, you rent resources from a cloud provider.
Think of electricity: you don't build your own power plant, you plug into a socket and pay for what you consume. The cloud works the same way for computing.
Before the Cloud: Traditional Infrastructure
Challenges of the Old World
┌─────────────────────────────────────────────────────────────┐
│ TRADITIONAL DATACENTER │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │Server 1 │ │Server 2 │ │Server 3 │ │Server 4 │ │
│ │ (20%) │ │ (15%) │ │ (80%) │ │ (5%) │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
│ │ │ │ │ │
│ └────────────┴────────────┴────────────┘ │
│ │ │
│ ┌──────────┴──────────┐ │
│ │ Internal Network │ │
│ └─────────────────────┘ │
│ │
│ Problems: │
│ • Underutilized servers (average 15-20%) │
│ • High fixed costs │
│ • Provisioning delay (weeks/months) │
│ • 24/7 maintenance required │
│ • Difficult scaling │
└─────────────────────────────────────────────────────────────┘
Main Problems:
| Problem | Impact |
|---|---|
| High initial cost | Purchase of servers, space, electricity |
| Underutilization | Average of 15-20% usage |
| Deployment time | Weeks to months for new servers |
| Maintenance | Dedicated IT team 24/7 |
| Scalability | Difficult and costly |
| Obsolescence | Hardware to replace every 3-5 years |
With the Cloud: The Revolution
┌─────────────────────────────────────────────────────────────┐
│ CLOUD COMPUTING │
├─────────────────────────────────────────────────────────────┤
│ │
│ ☁️ AWS CLOUD ☁️ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ Shared Resource Pool │ │
│ │ │ │
│ │ CPU ████████████████░░░░░░░░░░░░░░░░░░░░░░ │ │
│ │ RAM ██████████████████████░░░░░░░░░░░░░░░░ │ │
│ │ SSD ████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ │ │
│ │ │ │
│ │ → You use ONLY what you need │ │
│ │ → You pay ONLY for what you consume │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ Advantages: │
│ ✅ No initial investment │
│ ✅ Scaling in minutes │
│ ✅ Pay-as-you-go │
│ ✅ Global availability │
│ ✅ Maintenance managed by the provider │
└─────────────────────────────────────────────────────────────┘
The 5 Characteristics of Cloud (NIST)
The National Institute of Standards and Technology (NIST) defines 5 essential characteristics:
1. On-Demand Self-Service
User → [Web Interface/API] → Resources automatically created
You can provision resources without human intervention from the provider.
2. Broad Network Access
┌────────────┐ ┌────────────┐ ┌────────────┐
│ Laptop │ │ Mobile │ │ Tablet │
└─────┬──────┘ └─────┬──────┘ └─────┬──────┘
│ │ │
└──────────────────┼──────────────────┘
│
[Internet]
│
┌────┴────┐
│ Cloud │
└─────────┘
Access from any device via the Internet.
3. Resource Pooling (Multi-tenant)
┌─────────────────────────────────────┐
│ Resource Pool │
├─────────────────────────────────────┤
│ ┌─────┐ ┌─────┐ ┌─────┐ │
│ │ VM1 │ │ VM2 │ │ VM3 │ ... │
│ │User1│ │User2│ │User1│ │
│ └─────┘ └─────┘ └─────┘ │
│ │
│ Resources shared among clients │
│ but logically isolated │
└─────────────────────────────────────┘
4. Rapid Elasticity
Normal load: ██████░░░░░░░░░░ (3 servers)
↓
Peak load: ████████████████ (10 servers) ← Auto-scaling
↓
Return to normal: ██████░░░░░░░░░░ (3 servers)
5. Measured Service
┌────────────────────────────────────┐
│ AWS Billing │
├────────────────────────────────────┤
│ EC2 Instance : 720h × $0.10/h │
│ S3 Storage : 100 GB × $0.023 │
│ Data Transfer : 50 GB × $0.09 │
├────────────────────────────────────┤
│ TOTAL : $74.80 │
└────────────────────────────────────┘
You pay exactly what you consume.
The 3 Service Models
IaaS - Infrastructure as a Service
┌─────────────────────────────────────┐
│ YOU MANAGE │
├─────────────────────────────────────┤
│ Applications │
│ Data │
│ Runtime │
│ Middleware │
│ Operating System │
├─────────────────────────────────────┤
│ CLOUD MANAGES │
├─────────────────────────────────────┤
│ Virtualization │
│ Servers │
│ Storage │
│ Network │
└─────────────────────────────────────┘
Examples: AWS EC2, Azure VMs, Google Compute Engine
Analogy: You rent land with foundations, you build the house.
PaaS - Platform as a Service
┌─────────────────────────────────────┐
│ YOU MANAGE │
├─────────────────────────────────────┤
│ Applications │
│ Data │
├─────────────────────────────────────┤
│ CLOUD MANAGES │
├─────────────────────────────────────┤
│ Runtime │
│ Middleware │
│ Operating System │
│ Virtualization │
│ Servers │
│ Storage │
│ Network │
└─────────────────────────────────────┘
Examples: AWS Elastic Beanstalk, Heroku, Google App Engine
Analogy: You rent a furnished apartment, you bring your belongings.
SaaS - Software as a Service
┌─────────────────────────────────────┐
│ YOU MANAGE │
├─────────────────────────────────────┤
│ Your data and configuration │
├─────────────────────────────────────┤
│ CLOUD MANAGES │
├─────────────────────────────────────┤
│ Application │
│ Data (infrastructure) │
│ Runtime │
│ Middleware │
│ Operating System │
│ Virtualization │
│ Servers │
│ Storage │
│ Network │
└─────────────────────────────────────┘
Examples: Gmail, Office 365, Salesforce, Dropbox
Analogy: You book a hotel room, everything is included.
Visual Comparison
On-Premise IaaS PaaS SaaS
┌───────────┬───────────┬───────────┬───────────┐
Applications │ YOU │ YOU │ YOU │ CLOUD │
├───────────┼───────────┼───────────┼───────────┤
Data │ YOU │ YOU │ YOU │ CLOUD │
├───────────┼───────────┼───────────┼───────────┤
Runtime │ YOU │ YOU │ CLOUD │ CLOUD │
├───────────┼───────────┼───────────┼───────────┤
Middleware │ YOU │ YOU │ CLOUD │ CLOUD │
├───────────┼───────────┼───────────┼───────────┤
OS │ YOU │ YOU │ CLOUD │ CLOUD │
├───────────┼───────────┼───────────┼───────────┤
Virtualization│ YOU │ CLOUD │ CLOUD │ CLOUD │
├───────────┼───────────┼───────────┼───────────┤
Servers │ YOU │ CLOUD │ CLOUD │ CLOUD │
├───────────┼───────────┼───────────┼───────────┤
Storage │ YOU │ CLOUD │ CLOUD │ CLOUD │
├───────────┼───────────┼───────────┼───────────┤
Network │ YOU │ CLOUD │ CLOUD │ CLOUD │
└───────────┴───────────┴───────────┴───────────┘
The 3 Deployment Models
Public Cloud
┌─────────────────────────────────────────────┐
│ PUBLIC CLOUD │
│ │
│ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ │
│ │Comp.A│ │Comp.B│ │Comp.C│ │Comp.D│ │
│ └─────┘ └─────┘ └─────┘ └─────┘ │
│ │
│ Shared infrastructure, publicly accessible │
│ via the Internet │
│ │
│ Ex: AWS, Azure, GCP │
└─────────────────────────────────────────────┘
Private Cloud
┌─────────────────────────────────────────────┐
│ PRIVATE CLOUD │
│ │
│ ┌─────────────────────────────────────┐ │
│ │ Company X Only │ │
│ │ │ │
│ │ ┌─────┐ ┌─────┐ ┌─────┐ │ │
│ │ │Dept1│ │Dept2│ │Dept3│ │ │
│ │ └─────┘ └─────┘ └─────┘ │ │
│ └─────────────────────────────────────┘ │
│ │
│ Dedicated infrastructure for one organization │
│ Ex: OpenStack, VMware vSphere │
└─────────────────────────────────────────────┘
Hybrid Cloud
┌─────────────────────────────────────────────────────────────┐
│ HYBRID CLOUD │
│ │
│ ┌─────────────────┐ ┌─────────────────┐ │
│ │ PRIVATE CLOUD │◄────►│ PUBLIC CLOUD │ │
│ │ │ │ │ │
│ │ Sensitive Data │ │ Public Web Apps │ │
│ │ │ │ │ │
│ └─────────────────┘ └─────────────────┘ │
│ │
│ Combination of both with interconnection │
└─────────────────────────────────────────────────────────────┘
Major Cloud Providers
Market Shares (2024)
AWS ████████████████████████████████ 32%
Azure ██████████████████████ 23%
GCP ████████████ 12%
Others ████████████████████████████████ 33%
Comparison of Main Services
| Service | AWS | Azure | GCP |
|---|---|---|---|
| Compute | EC2 | Virtual Machines | Compute Engine |
| Serverless | Lambda | Functions | Cloud Functions |
| Object Storage | S3 | Blob Storage | Cloud Storage |
| Database | RDS | SQL Database | Cloud SQL |
| Containers | EKS | AKS | GKE |
Advantages of Cloud Computing
1. Cost Savings
- No initial investment (CAPEX → OPEX)
- Pay-as-you-go
- Economies of scale
2. Agility
- Deployment in minutes instead of weeks
- Easy experimentation
- Accelerated innovation
3. Elasticity
- Automatic scaling
- Peak load management
- No over-provisioning
4. Reliability
- Built-in redundancy
- Disaster recovery
- High availability
5. Security
- Compliance (ISO, SOC, HIPAA)
- Encryption
- Provider expertise
Points to Watch
The cloud is not magical! You need to understand:
- Costs can skyrocket if poorly managed
- Security remains a shared responsibility
- Vendor lock-in
- Network latency issues
Validation Quiz
- What are the 5 characteristics of the cloud according to NIST?
- What is the difference between IaaS, PaaS, and SaaS?
- Name 3 advantages of cloud computing.
- Which cloud provider is the market leader?
- What is the "pay-as-you-go" model?
Next section: Introduction to AWS