Right now it’s not about the clouds that fly in the sky (although there are different types like cirrus, cumulus, stratus…). It’s about clouds that count — a whole world of different components used for various purposes. So let’s break it down.
1. Compute
The heart of the cloud — computing power that allows you to run applications and process data. This includes virtual machines, containers, and serverless functions.
- Virtual Machines (VMs): Full virtual computers with their own operating system. Provide strong isolation and are suitable for applications that need full OS control.
Examples: AWS EC2, Azure Virtual Machines, GCP (Google) Compute Engine. - Containers: Lightweight isolated environments that share the host OS kernel. Great for fast deployment, scaling, and portability — especially in microservices architectures.
Examples: Docker, AWS ECS/Fargate, Azure Container Instances, GCP GKE. - Serverless Functions: Code execution without managing servers. The platform automatically scales and charges only for actual execution time. Ideal for event-driven tasks, APIs, and background jobs.
Examples: AWS Lambda, Azure Functions, GCP Cloud Functions.
Simple analogy:
- Virtual Machine — like a separate physical computer.
- Container — like a box with the app inside.
- Serverless function — like pressing a button: the code runs, then it’s done.
2. Storage
Cloud platforms offer different kinds of data storage:
- Block Storage: Splits data into blocks and attaches to a VM like a regular disk. Works great for databases and operating systems.
- Object Storage: Stores files as objects with metadata, accessible via APIs. Perfect for backups, media, large files.
- File Storage: Provides shared filesystem access with folders and files, like a network drive. Useful when apps need traditional file paths.
Examples by provider:
- AWS: EBS (block), S3 (object), EFS (file)
- Azure: Disk Storage, Blob Storage, Files
- GCP: Persistent Disk, Cloud Storage, Filestore
3. Networking
Networking services dictate how components talk to each other and to users.
- Virtual Network (VPC / VNet): An isolated network space inside the cloud where your servers, databases, and services live — controlling IPs, routing, and security.
- Load Balancer: Distributes incoming traffic across multiple app instances to increase availability and performance.
- CDN (Content Delivery Network): A global network that delivers content to users from the nearest location, reducing delay.
Simple analogy:
- A private road (VPC),
- a traffic manager (load balancer),
- and local warehouses front-lining content (CDN).
4. Databases
Cloud databases let you store and work with data without manually managing servers.
- Relational Databases (SQL): Great for structured data, transactions, and strict schemas.
- Non-relational Databases (NoSQL): Flexible schemas, massive scale.
- Fully Managed Services: The cloud provider handles backups, updates, and scaling automatically.
Example services:
- AWS: RDS, Aurora (SQL); DynamoDB (NoSQL)
- Azure: SQL Database, Database for PostgreSQL, Cosmos DB
- GCP: Cloud SQL, Firestore, Bigtable
5. Dev & Management Tools
These tools help deploy apps, monitor their health, and automate processes.
- Infrastructure as Code (IaC): Define cloud resources in configuration files that can be deployed repeatedly.
- Monitoring & Logging: Collect metrics, logs, and alerts to understand system behavior.
- CI/CD & Automation: Automatically build, test, and deploy applications.
Example tools:
- AWS: CloudFormation, CloudWatch, CodePipeline
- Azure: Resource Manager, Monitor, Azure DevOps
- GCP: Deployment Manager, Cloud Monitoring, Cloud Build
Summary:
Cloud computing consists of many layers — from computing power and storage to networking, databases, and developer tools. Each component plays a role in building and running scalable applications in the cloud.