If you are a beginner in cloud computing, you have probably heard terms like AWS, Azure, EC2, S3, Virtual Machines, Containers, IaaS, PaaS, and SaaS.
At first, all of these terms can feel confusing.
So, in this article, I’m going to explain cloud computing from the very beginning, using simple examples and analogies.
By the end, you should have a clear idea of:
- What cloud computing actually means
- On-premises vs cloud computing
- How computing evolved from physical servers to containers and serverless
- What AWS is
- What a Cloud Service Provider (CSP) does
- The major cloud service categories
- IaaS, PaaS, and SaaS
- Some important AWS services such as EC2, S3, RDS and VPC
☁️ 1. What is Cloud Computing?
Let's start with a simple question:
What if you want to run a website?
You need computing resources such as:
- A server
- Storage
- A database
- Networking
- Operating system
- Security
- And other infrastructure
Traditionally, you would have to buy and maintain your own physical servers.
But cloud computing changes this.
Simple Definition
Cloud computing is the practice of using computing resources such as servers, storage, databases, networking and software over the internet instead of managing all the physical infrastructure yourself.
Think about electricity.
You don't build your own power plant every time you need electricity.
You simply use electricity and pay for what you consume.
Cloud computing follows a similar idea.
Instead of buying and maintaining expensive servers, you can rent computing resources from a cloud provider whenever you need them.
🏢 2. On-Premises vs Cloud
Before understanding the cloud, let's understand the traditional approach.
🏠 On-Premises
Suppose you own a company and want to run an application.
With an on-premises setup:
- You buy the physical servers.
- You provide the space for those servers.
- You hire people to manage them.
- You pay for electricity and maintenance.
- You are responsible for hardware failures.
- You have to plan your capacity in advance.
In simple terms:
You own and manage everything.
Example
Imagine you open a restaurant.
You need to buy:
- The building
- Kitchen equipment
- Tables
- Refrigerators
- Electricity infrastructure
You are responsible for maintaining everything.
That's similar to an on-premises infrastructure.
☁️ Cloud Computing
Now imagine that instead of buying all the infrastructure, you rent a fully equipped kitchen whenever you need it.
Someone else takes care of:
- The building
- Electricity
- Maintenance
- Equipment
- Infrastructure
You simply use what you need and pay according to your usage.
That's the basic idea behind cloud computing.
On-Premises
You manage the infrastructure.
Cloud
The cloud provider manages the underlying infrastructure, while you use the resources you need.
🚀 3. The Evolution of Computing
Cloud computing didn't appear overnight.
Computing infrastructure evolved through several stages.
A simplified journey looks like this:
Dedicated Servers → Virtual Machines → Containers → Serverless
Let's understand each one.
🖥️ 4. Dedicated Servers
A dedicated server is a physical server used by a single customer or organization.
For example:
Your Application
↓
Physical Server
↓
Hardware
The entire physical machine belongs to your workload.
Advantages
- High level of control
- Good performance
- Strong isolation
- You control the underlying machine
Problems
However, dedicated servers can be expensive.
Imagine you have a server with 64 GB RAM, but your application only uses 10 GB.
The remaining resources may sit unused.
That means:
You are paying for resources that you aren't fully using.
Scaling can also be difficult because increasing capacity may require purchasing additional hardware.
🖥️ 5. Virtual Machines (VMs)
Virtualization made infrastructure much more efficient.
Instead of running one application on an entire physical server, we can divide the physical machine into multiple Virtual Machines.
A software layer called a hypervisor allows multiple VMs to run on the same physical machine.
Conceptually:
Physical Server
↓
Hypervisor
↙ ↓ ↘
VM VM VM
↓ ↓ ↓
App A App B App C
Each VM behaves like a separate computer.
It can have its own:
- Operating system
- Applications
- CPU allocation
- Memory
- Storage
Why are VMs useful?
They allow us to utilize the physical server more efficiently.
Instead of:
Server → One application
we can have:
Server
├── VM 1
├── VM 2
└── VM 3
This improves resource utilization and makes scaling easier.
But VMs have overhead
Each VM usually needs its own guest operating system.
So if you run 10 VMs, you may have 10 operating systems consuming resources.
This leads us to the next evolution.
📦 6. Containers
Containers take the idea of efficient resource utilization even further.
A container packages an application together with the dependencies it needs to run.
Unlike traditional VMs, containers can share the host operating system kernel.
A simplified structure looks like this:
Physical Server
↓
Host Operating System
↓
Container Runtime
↙ ↓ ↘
Container Container Container
↓ ↓ ↓
App A App B App C
One popular container platform is Docker.
Why are containers useful?
Containers are:
- Lightweight
- Fast to start
- Portable
- Easy to deploy
- Efficient in resource usage
For example, if you build an application on your laptop, you can package it into a container and run that same container in another environment.
This helps reduce the classic:
"It works on my machine!" 😅
problem.
⚡ 7. Serverless / Functions
The next step is to think:
What if I don't want to manage servers or even containers?
That's where serverless computing comes in.
With services such as AWS Lambda, you can upload code and let the cloud provider manage the underlying infrastructure.
You generally focus on:
Your Code
↓
Function
↓
Cloud Provider manages infrastructure
You don't have to manually manage the server operating system or physical hardware.
And importantly:
Serverless does not mean there are no servers.
Servers still exist.
It simply means that the cloud provider manages the servers for you.
🌎 8. What is AWS?
Now that we understand cloud computing, let's talk about one of the biggest cloud platforms.
AWS stands for Amazon Web Services.
AWS is a cloud computing platform provided by Amazon.
It offers a large collection of cloud services that organizations and developers can use to build, deploy and operate applications.
For example, AWS provides services for:
- Computing
- Storage
- Databases
- Networking
- Security
- Machine Learning
- Analytics
- Containers
- Serverless computing
- Monitoring
- Developer tools
So AWS is much more than simply "renting a server."
It provides an entire ecosystem of cloud services.
☁️ 9. What is a Cloud Service Provider (CSP)?
A Cloud Service Provider (CSP) is a company that provides cloud computing resources and services over the internet.
Some major cloud providers include:
- Amazon Web Services (AWS)
- Microsoft Azure
- Google Cloud Platform (GCP)
Other providers also exist, especially for specialized or smaller-scale workloads.
A CSP operates the underlying infrastructure, such as:
- Data centers
- Physical servers
- Networking equipment
- Storage systems
- Security infrastructure
Customers can access these resources through web consoles, APIs, command-line tools and other interfaces.
🧩 10. How Cloud Services Work Together
One of the most important things to understand about cloud computing is that services don't usually work alone.
You can combine multiple services to create a complete application.
For example, imagine we are deploying a website.
We might have:
Users
↓
Load Balancer
↓
Web Server
↓
Application
↓
Database
↓
Storage
In AWS, this could involve services such as:
- EC2 → computing
- Elastic Load Balancing → distributing traffic
- RDS → database
- S3 → object storage
- VPC → networking
So instead of thinking of AWS as "one service," think of it as a toolbox containing many different services.
🧱 11. The Four Basic Building Blocks of IaaS
When learning Infrastructure as a Service, four fundamental areas are especially useful to understand:
1️⃣ Compute
Compute gives you the processing power required to run applications.
Example:
AWS EC2
You can think of an EC2 instance as a virtual computer that you rent from AWS.
2️⃣ Storage
Storage is used to store files and data.
For example:
AWS S3
S3 can be used to store things such as:
- Images
- Videos
- Documents
- Backups
- Application files
Think of S3 as a huge online storage system designed for applications.
3️⃣ Networking
Networking allows your cloud resources to communicate with each other and with users over networks.
AWS provides networking services such as:
Amazon VPC (Virtual Private Cloud)
A VPC allows you to create a logically isolated network environment for your AWS resources.
Think of it as creating your own private network inside AWS.
4️⃣ Databases
Applications often need databases to store structured information.
For example:
Amazon RDS
RDS is a managed relational database service.
Instead of manually installing and maintaining a database server, AWS handles many of the administrative tasks for you.
💡 12. IaaS, PaaS and SaaS
This is one of the most important concepts for beginners.
There are three common cloud service models:
IaaS
Infrastructure as a Service
PaaS
Platform as a Service
SaaS
Software as a Service
Let's understand them using a simple analogy.
🍳 Think About Ordering Food
Imagine you want to eat a meal.
There are three possibilities.
🛒 IaaS — Buy the Ingredients
You get:
- Kitchen
- Ingredients
- Cooking equipment
But you do most of the work yourself.
In IaaS, the provider gives you infrastructure such as:
- Virtual machines
- Storage
- Networking
You manage more of the software stack.
👨🍳 PaaS — Use a Ready Kitchen
The kitchen and basic infrastructure are already prepared.
You mainly focus on preparing your application.
With PaaS, the provider manages much of the underlying infrastructure and platform.
You focus primarily on:
Building and deploying your application.
🍽️ SaaS — Order the Finished Meal
You simply use the software.
You don't worry about:
- Servers
- Operating systems
- Infrastructure
- Application maintenance
The provider handles almost everything.
Examples include:
- Gmail
- Microsoft 365
- Salesforce
You simply use the application through the internet.
🔍 13. IaaS vs PaaS vs SaaS
| Model | You Mainly Manage | Example |
|---|---|---|
| IaaS | OS, applications, data and configuration | Amazon EC2 |
| PaaS | Application and data | Heroku / similar PaaS platforms |
| SaaS | Mostly just your usage and data | Gmail, Microsoft 365 |
The key idea is:
More Control
↑
IaaS
↓
PaaS
↓
SaaS
↓
Less Infrastructure Management
As you move from IaaS → PaaS → SaaS, the cloud provider takes responsibility for more of the underlying technology.
🔐 14. Who is Responsible for What?
This is where the concept of the shared responsibility model becomes important.
Cloud providers are responsible for the security of the cloud, such as:
- Physical data centers
- Physical servers
- Underlying infrastructure
Customers are responsible for many things in the cloud, depending on the service they use.
For example, customers may need to manage:
- Application security
- Access permissions
- Data
- Configuration
- Operating systems in some IaaS services
The exact responsibility depends on the service.
So using the cloud does not mean:
"The cloud provider handles security completely."
Instead:
Security is a shared responsibility.
🌍 15. Different Types of Cloud Deployments
Cloud environments can also be categorized based on how infrastructure is deployed.
Public Cloud
Cloud infrastructure is provided by a cloud provider and shared across customers using logical isolation.
Examples:
- AWS
- Azure
- Google Cloud
Private Cloud
Cloud infrastructure is dedicated to a particular organization.
Organizations may use technologies such as:
- OpenStack
- VMware-based solutions
- Other private-cloud platforms
Hybrid Cloud
A combination of:
Private infrastructure + Public Cloud
For example, an organization might keep some sensitive systems in its own environment while using AWS or Azure for other workloads.
🏢 16. Why Do Companies Use Cloud Computing?
Cloud computing provides several important advantages.
💰 1. Cost Efficiency
You don't necessarily need to purchase expensive hardware upfront.
You can use resources according to your requirements.
📈 2. Scalability
Suppose your website normally receives 1,000 users per day.
Suddenly, it becomes popular and receives 100,000 users.
Cloud infrastructure can provide mechanisms to scale resources to handle increased demand.
⚡ 3. Speed
Instead of waiting weeks to purchase and install physical servers, cloud resources can often be provisioned much faster.
🌍 4. Global Availability
Cloud providers operate infrastructure across multiple geographic regions.
This allows applications to be deployed closer to users and designed for higher availability.
🛠️ 5. Less Hardware Management
You don't have to physically maintain the underlying servers and data centers when using cloud services.
🗺️ 17. A Simple AWS Application Architecture
Let's put everything together.
Suppose we want to deploy an e-commerce website.
A simplified architecture could look like this:
👤 Users
|
↓
Load Balancer
|
↓
EC2 Instances
|
┌────────┴────────┐
↓ ↓
RDS S3
Database Images/Files
|
↓
Application Data
And these resources can be placed inside a:
VPC (Virtual Private Cloud)
This is how multiple cloud services can work together to create one complete application.
🧠 18. The Most Important AWS Services to Remember
As a beginner, don't try to memorize hundreds of AWS services.
Start with these:
| AWS Service | Simple Meaning |
|---|---|
| EC2 | Virtual server |
| S3 | Object/file storage |
| RDS | Managed relational database |
| VPC | Virtual network |
| ELB | Distributes traffic across resources |
| Lambda | Run code without managing servers |
| CloudWatch | Monitoring and observability |
| IAM | Identity and access management |
Once these concepts become clear, learning other AWS services becomes much easier.
🎯 19. What Should a Beginner Learn First?
If you are starting cloud computing from zero, don't try to learn everything at once.
A simple learning path is:
Cloud Computing Basics
↓
Networking Basics
↓
Linux Basics
↓
Virtual Machines
↓
AWS Fundamentals
↓
EC2 + S3 + IAM
↓
VPC + RDS
↓
Load Balancing
↓
Containers + Docker
↓
Serverless
↓
Cloud Projects
↓
DevOps / Cloud Engineering
The goal isn't to memorize AWS services.
The goal is to understand:
Why does this service exist, what problem does it solve, and how does it connect with other services?
🚀 Final Takeaway
Cloud computing is basically a shift from:
"I need to own and manage the infrastructure."
to:
"I need computing resources, so I'll use them from a cloud provider."
The evolution can be remembered as:
Physical Servers
↓
Virtual Machines
↓
Containers
↓
Serverless
And the common service models can be remembered as:
IaaS → Infrastructure
PaaS → Platform
SaaS → Software
If you're learning AWS, start with:
EC2 → Compute
S3 → Storage
RDS → Database
VPC → Networking
IAM → Access Control
Once these fundamentals are clear, the rest of cloud computing becomes much easier to understand.
💬 One Question for You
If you're also learning cloud computing, which topic confused you the most when you started?
Let me know in the comments. It might become the topic of my next beginner-friendly article! ☁️🚀
📚 Learning Notes
This article is based on my Day 1 learning journey into cloud computing. I’m documenting the concepts I learn and trying to explain them in the simplest way possible so that other beginners can learn along with me.
Top comments (0)