When I first started learning cloud computing, I thought AWS was some kind of magic.
People talked about:
- EC2
- Azure Virtual Machines
- DigitalOcean Droplets
- VPS Hosting
as if they were completely different from the virtual machines I was running in VirtualBox.
Then one day I realized something surprising:
The Kali Linux VM running on my laptop and an AWS EC2 server are based on the same core idea.
The biggest difference isn't the technology.
It's where the machine is running.
Let's explore why.
A Question Most Beginners Never Ask
Suppose you're running Kali Linux in VirtualBox.
Your setup might look like this:
Physical Laptop
│
└── Windows
│
└── VirtualBox
│
└── Kali Linux
You can:
- Start it
- Stop it
- Allocate RAM
- Allocate CPU
- Configure networking
Sounds familiar?
Now let's look at an AWS EC2 instance.
What Happens When You Launch an EC2 Instance?
Most people imagine something like this:
Your Laptop
│
▼
AWS Magic
│
▼
Server
But that's not really what's happening.
Behind the scenes, AWS is running virtualization too.
More like:
AWS Datacenter
│
├── Physical Server
│
├── Hypervisor
│
│
├── VM #1
├── VM #2
├── VM #3
└── VM #4
Those VMs belong to different customers.
One of them might be yours.
Wait... That's Just VirtualBox
Exactly.
Both systems use the same concept.
VirtualBox:
Your Laptop
│
├── Windows
│
├── VirtualBox
│
└── Kali VM
Cloud:
AWS Datacenter
│
├── Physical Server
│
├── Hypervisor
│
└── Ubuntu VM
Same idea.
Different location.
Understanding the Hypervisor
In VirtualBox, the hypervisor is:
VirtualBox
In AWS, Azure, and other cloud platforms, the hypervisor is usually an enterprise-grade solution designed for massive scale.
Its job is still the same:
- Create virtual machines
- Allocate resources
- Isolate customers
- Manage networking
- Manage storage
The hypervisor is the invisible layer that makes cloud computing possible.
Let's Compare Them Side by Side
VirtualBox VM
You create:
2 CPU
4 GB RAM
50 GB Disk
VirtualBox creates:
Ubuntu VM
or
Kali VM
AWS EC2
You create:
2 vCPU
4 GB RAM
50 GB Storage
AWS creates:
Ubuntu VM
or
Amazon Linux VM
The workflow is almost identical.
The Biggest Difference: Location
This is where many beginners get confused.
Your VirtualBox VM runs here:
Your Laptop
An AWS VM runs here:
AWS Datacenter
Possibly hundreds or thousands of kilometers away.
Visual:
You
│
├── Local VM
│ └── Your Laptop
│
└── Cloud VM
└── AWS Datacenter
That's it.
The VM didn't become something else.
It simply moved to another physical machine.
Why DevOps Engineers Care About This
Once you understand virtualization, many DevOps concepts become easier.
Consider this:
Developer Laptop
│
└── Virtual Machine
Now scale it:
AWS
│
├── VM
├── VM
├── VM
├── VM
└── VM
Suddenly you're running production systems.
The concepts remain the same:
- CPU
- RAM
- Storage
- Networking
- Operating Systems
Only the scale changes.
Your First Production Server Is Just a VM
Imagine you launch:
Ubuntu 24.04
on AWS.
You SSH into it:
ssh ubuntu@server-ip
What do you see?
Linux.
Just Linux.
The same Linux concepts you learned in VirtualBox:
top
systemctl
journalctl
ip a
df -h
all work exactly the same.
This is why local labs are so valuable.
They prepare you for real infrastructure.
What About DigitalOcean and VPS Providers?
Same story.
Whether it's:
- AWS EC2
- Azure Virtual Machines
- DigitalOcean Droplets
- Linode
- Vultr
- VPS Hosting
you're usually renting a virtual machine.
Visual:
Physical Server
│
├── Customer A VM
├── Customer B VM
├── Customer C VM
└── Your VM
The provider manages the hardware.
You manage the operating system.
Where Containers Fit In
Now things get interesting.
Many DevOps engineers eventually move from:
Virtual Machines
to:
Containers
Instead of:
VM
└── Full Operating System
you get:
Container
└── Application
Containers are lighter and start faster.
But they still run on top of servers that are often virtual machines.
This is why understanding virtualization comes first.
The Mental Model That Changes Everything
Think about it like this:
VirtualBox teaches you:
One Physical Machine
│
▼
Multiple Virtual Machines
Cloud computing teaches:
Massive Datacenter
│
▼
Millions of Virtual Machines
The principle is identical.
Only the scale changes.
Final Thoughts
Many beginners treat cloud computing as a completely separate skill.
It's not.
If you've created virtual machines in VirtualBox, allocated RAM, configured networking, and installed operating systems, you've already learned the foundation of cloud infrastructure.
AWS didn't invent a new computer.
Azure didn't invent a new operating system.
DigitalOcean didn't invent a new server.
They simply took virtualization and scaled it to datacenter level.
And once you understand that, cloud computing becomes far less mysterious.
Top comments (0)