This module dives into the core foundation of cloud computing:
- Virtualization (the backbone of the cloud)
- Networking in the cloud (VPC, subnets, gateways, firewalls)
- Cloud infrastructure components (compute, storage, scaling, monitoring)
Virtualization allows a single physical machine to run multiple virtual machines (VMs) with their own OS and apps.
- Enables better resource utilization
- Reduces cost and hardware dependency
- Server Virtualization → Multiple VMs on one server (e.g., AWS EC2)
- Storage Virtualization → Pooling storage devices (e.g., EBS, S3)
- Network Virtualization → Creating virtual networks (e.g., AWS VPC)
- Desktop Virtualization → Remote desktops (e.g., Amazon WorkSpaces)
Analogy: Pizza cut into slices → one pizza (server) serves many people (VMs).
A private network inside the cloud for hosting resources like servers and databases.
- Subnets → Smaller networks inside a VPC (public/private)
- Internet Gateway → Connects VPC to internet
- Route Tables → Define traffic flow
Analogy:
- VPC = Housing society
- Subnet = Apartments in the society
- Internet Gateway = Main gate
- Virtual Machines (EC2) → Full control of OS + apps
- Containers (Docker, Kubernetes) → Lightweight, portable apps
- Serverless (Lambda) → Code execution without managing servers
Analogy:
- VM = Rent a PC in a cyber café
- Containers = Food delivery box
- Serverless = Zomato order
- EBS (Elastic Block Store) → Like a hard drive for EC2 (persistent storage)
- S3 (Simple Storage Service) → Object storage for files, backups, images
- EFS (Elastic File System) → Shared file storage across multiple EC2s
Analogy:
- EBS = Hard disk in your laptop
- S3 = Google Drive
- EFS = Shared folder in an office network
- Auto Scaling → Automatically add/remove servers based on demand
- Load Balancer → Distributes traffic across servers for high availability
Example: Flipkart adds more EC2s during Big Billion Day using auto scaling.
- Netflix → Runs workloads on thousands of EC2 instances inside VPCs, auto scales based on user traffic.
- Swiggy → Uses containers (Kubernetes) to manage microservices like orders, payments, delivery.
- Banks → Use private VPCs for secure transaction systems.
| Concept | What It Is | Example | Analogy |
|---|---|---|---|
| Virtualization | One server → many virtual machines | VMware, EC2 | Pizza slices 🍕 |
| VPC | Private cloud network | AWS VPC | Housing society 🏢 |
| Compute (VM) | Full control server | EC2 | Cyber café PC 💻 |
| Containers | Packaged apps | Docker, K8s | Food delivery box 🍱 |
| Serverless | Run code on trigger | Lambda | Zomato order 🍔 |
| Storage (EBS) | Block storage | AWS EBS | Hard disk 💾 |
| Storage (S3) | Object storage | AWS S3 | Google Drive 📂 |
| Storage (EFS) | Shared file storage | AWS EFS | Office shared folder 🗂 |
| Load Balancing | Distributes traffic | ELB | Toll plaza 🚦 |
| Auto Scaling | Adjusts server count | ASG | Hiring extra staff on weekends 👨🍳 |