☁️Cloud Computing
Foundations · Lesson 1/8

IT Fundamentals — The Ground Floor

25 min 1 exercise 1 quiz

What you'll learn

  • What "a server" really is
  • Clients, servers, and how they connect
  • Operating systems, storage, and networks in one picture
  • The vocabulary the rest of cloud builds on

A server is just a computer 🖥️

The word "server" sounds mysterious. It isn't. A server is simply a computer that provides something to other computers — usually running 24/7 in a data center instead of on a desk. Your laptop asking for a web page is the client; the computer that sends it back is the server. That's the whole client–server model, and the entire internet is built on it.

Quick reminder of the pieces (from the very first computer basics, now in an IT frame):

  • CPU + RAM — the server's brain and short-term memory.
  • Storage — hard drives (HDD, cheap/slow) and SSDs (fast) holding data permanently.
  • Operating System — usually Linux on servers (you saw why in the security track): stable, free, scriptable.
  • Network — how servers talk: IP addresses, ports, DNS (from the networking lesson).

A data center is a warehouse full of thousands of these servers, with massive internet connections, backup power, and cooling. When you "use the cloud," you're really renting a slice of someone's data center.

Two words you'll hear constantly:

  • On-premises ("on-prem") — a company buys and runs its own servers in its own building. You own the hardware and all its headaches.
  • Cloud — you rent computing from a provider (AWS, Azure, Google) over the internet and pay only for what you use.

Understanding cloud starts with this: it's not magic, it's someone else's computers that you rent instead of buy. Everything else — scaling, services, pricing — is built on that one shift from owning to renting.

Virtualization: one machine pretending to be many 🧩

Here's the trick that made the entire cloud industry possible: virtualization. A single physical server has one CPU, one pool of RAM, one set of disks. But a piece of software called a hypervisor sits on top of that hardware and slices it into several independent virtual machines (VMs), each believing it has its own private computer.

Think of a hypervisor like a landlord who converts one big house into several separate apartments. Each tenant (VM) gets their own locked door, their own furniture (operating system), and their own utilities bill (allocated CPU/RAM) — but they're all sharing the same building's foundation, walls, and plumbing (the physical hardware).

There are two main types of hypervisor:

  • Type 1 ("bare-metal") — runs directly on the hardware, with no host OS underneath. Used in data centers because it's fast and efficient. Examples: VMware ESXi, Microsoft Hyper-V, Xen (which AWS used for years).
  • Type 2 ("hosted") — runs as an app on top of a normal OS, like VirtualBox on your Windows laptop. Great for personal testing, too slow and wasteful for a data center serving thousands of customers.

Why this matters for the cloud: when you launch an EC2 instance, AWS isn't handing you a whole physical machine — it's carving out a VM from a much bigger physical server, alongside potentially dozens of other customers' VMs on that same hardware. That's exactly how a cloud provider can rent you "a fraction of a computer" cheaply, safely isolated from your neighbors, and how they pack thousands of customers onto a comparatively small number of physical machines. Virtualization is the invisible foundation everything else in this course is built on top of.

Exercise 1

Build a VM resource allocator. A hypervisor must reject a new VM request if it would exceed the physical host's capacity. Write canAllocate(hostFreeRAM, requestedRAM) that returns true if requestedRAM is less than or equal to hostFreeRAM, and false otherwise. This is the exact yes/no check a hypervisor performs before carving out a new virtual machine.

Real-world case study: the launch of AWS EC2 (2006) 🔍

Before 2006, if a startup wanted a server, it bought or leased physical hardware — a slow process involving vendors, shipping, and racking machines in a data center, often taking weeks. Amazon had built massive virtualized data centers to handle its own retail traffic spikes (like the holiday shopping season) and realized most of that capacity sat idle the rest of the year.

In August 2006, Amazon launched EC2 (Elastic Compute Cloud), letting anyone rent a virtual machine by the hour with a credit card and no contract. This was only possible because of mature hypervisor technology (AWS used a modified version of the Xen hypervisor): Amazon could safely slice its physical servers into isolated VMs and rent them to thousands of unrelated customers side-by-side.

EC2's launch is widely regarded as the beginning of modern cloud computing as an industry. It turned infrastructure from a slow, capital-intensive purchase into an instant, pay-as-you-go rental — exactly the shift from "owning" to "renting" this lesson opened with, made real by virtualization.

Quick quiz

Question 1 of 5

What is a server?

Question 2 of 5

On-premises vs cloud — the core difference?

Question 3 of 5

Which OS runs most servers?

Question 4 of 5

What does a hypervisor do?

Question 5 of 5

Why was AWS EC2's 2006 launch so significant?

Summary

  • A server is just a computer that serves others (client–server model)
  • Pieces: CPU/RAM, storage, OS (usually Linux), network
  • Data centers house thousands of servers; the cloud rents you a slice
  • On-prem = own; cloud = rent
  • Virtualization (hypervisors) slices one physical server into many isolated VMs — the invisible foundation of the cloud
  • You built a VM resource allocator that checks if a request fits the host's free capacity
  • AWS EC2's 2006 launch turned that virtualization technology into the modern, pay-as-you-go cloud industry

Next: Cloud Concepts — the models (IaaS/PaaS/SaaS) and why the cloud took over.

Practice

Reading is not learning until you run something. Pick one.

Open an example in Code Lab