The case
Ten store systems. Ten machines, nearly idle.
Each of Isaac's store systems had its own server, and most of the time it used only 15% of the CPU. The rest was money heating up the room.
This post builds on the concepts of Cloud Fundamentals and Regions and Zones.
The problem
One app per server
It works, but it is inefficient: waste of resources, high cost and delay, with weeks to set up each new server.
Partial solution
Virtualization
A hypervisor splits the hardware into several isolated virtual machines (VMs), which share the resources of the same physical server. Each VM has its own operating system and can't see the others. VMware pioneered this market.
It solves the waste, but not everything: the company still buys and maintains the physical data center.
The solution
Virtualization moves to the cloud
Instead of running your own hypervisor on your own hardware, you rent ready-made VMs from a provider. All the big clouds offer the same service, under different names:
| Provider | VM service |
|---|---|
| AWS | Amazon EC2 (Elastic Compute Cloud) |
| Azure | Azure Virtual Machines |
| Google Cloud | Compute Engine |
| Oracle Cloud | OCI Compute |
Who looks after what
You manage
- VM configuration
- Operating system
- Runtime and your application
The provider manages
- Hardware, power and cooling
- Physical maintenance
- The hypervisor
The result: focus on the app, a VM created in minutes, pay-as-you-go and total flexibility. You can even create a VM in London while sitting in Brazil.
Curiosity
And before the cloud?
Renting servers existed long before public clouds. AWS launched EC2 in 2006, and hosting companies were selling servers well before that.
Shared hosting
A "small piece" of a server, split with other customers (e.g., HostGator, GoDaddy).
Dedicated server
A whole physical server, all yours, in the hosting company's data center.
VPS
A slice of a physical server sold as an independent server. It already used virtualization.
Colocation
You buy the hardware and rent space, power and network in a third party's data center.
It was common to get a username and password for FTP from the hosting company to upload a site. But FTP is just a file transfer protocol: it doesn't say who the server belongs to.
What the cloud brought new
It wasn't just "renting instead of buying"
| Traditional hosting | Cloud | |
|---|---|---|
| Hiring | Website or phone, activation in days | Self-service by console or API, in minutes |
| Billing | Fixed monthly or annual contract | Granular pay-as-you-go (per second or minute) |
| Scaling | New request and a new wait | Automatic elasticity via API |
| Capacity | Limited to the provider | Massive global scale |
| Location | Usually just one | Several regions and zones, a few clicks away |
Quick test
Three questions, exam style
01
Which software splits a physical server into several isolated virtual machines?
02
On a VM in the cloud, who is responsible for applying patches to the operating system?
03
Which of these existed before the public cloud and also used virtualization?
Virtual machines show up in any cloud certification: EC2 on AWS, Virtual Machines on Azure, Compute Engine on Google Cloud and OCI Compute on Oracle Cloud. The name changes; the division of responsibilities is the same. The next step on the track is Cloud Service Models.