Cloud Notes
Fundamentals of virtualization technology that powers cloud computing, including virtual machines, hypervisors, resource abstraction, and how virtualization enables cloud services.
Virtualization is the foundational technology that makes cloud computing possible. It creates an abstraction layer between physical hardware and the software running on it, allowing multiple virtual systems to share a single physical machine.
What is Virtualization?
Virtualization is the process of creating a software-based (virtual) version of something—whether it's compute, storage, networking, or even an entire desktop environment. The most common form is server virtualization, where a single physical server hosts multiple virtual machines (VMs).
How Virtualization Works
The process involves three key concepts:
1. Host Machine
The physical hardware that runs the virtualization software. It provides the actual CPU, memory, storage, and network resources.
2. Hypervisor
Software that creates and manages virtual machines. It sits between the hardware and VMs, allocating physical resources to each virtual machine.
3. Guest Machine (Virtual Machine)
A software-based emulation of a physical computer. Each VM runs its own operating system and applications as if it were a separate physical machine.
# Creating a virtual machine with VirtualBox CLI
VBoxManage createvm --name "WebServer" --ostype Ubuntu_64 --register
VBoxManage modifyvm "WebServer" --memory 4096 --cpus 2 --vram 128
VBoxManage createhd --filename "WebServer.vdi" --size 50000
VBoxManage startvm "WebServer" --type headless
# Creating a VM on cloud (KVM-based)
virt-install \
--name web-server \
--ram 4096 \
--vcpus 2 \
--disk size=50 \
--os-variant ubuntu22.04 \
--network bridge=br0 \
--graphics none \
--location /iso/ubuntu-22.04.isoTypes of Virtualization
| Type | What It Virtualizes | Example |
|---|---|---|
| Server | Entire computer | VMware ESXi, KVM, Hyper-V |
| Desktop | User workstations | VMware Horizon, Citrix |
| Network | Network components | VMware NSX, VLANs |
| Storage | Disk/SAN resources | EMC VPLEX, vSAN |
| Application | Individual apps | Docker, App-V |
| Data | Database resources | Logical databases |
Benefits of Virtualization
- Resource Efficiency — Utilization increases from 10-15% to 60-80%
- Cost Reduction — Fewer physical servers needed
- Isolation — VMs are independent; one crash doesn't affect others
- Portability — VMs can be moved between physical hosts
- Rapid Provisioning — New VMs created in minutes vs. weeks for hardware
- Disaster Recovery — VM snapshots and replication simplify backups
- Testing — Create identical environments for testing
Virtualization vs. Cloud Computing
| Aspect | Virtualization | Cloud Computing |
|---|---|---|
| Scope | Technology | Service delivery model |
| Focus | Resource abstraction | On-demand services |
| Users | IT administrators | End users/developers |
| Billing | Fixed costs | Pay-per-use |
| Management | In-house | Provider or self-service |
| Scale | Limited to owned hardware | Virtually unlimited |
Virtualization is a foundational technology that enables cloud computing, but they are not the same thing. Cloud computing builds on virtualization to deliver scalable, metered services.
Real-World Scenario
Company: TechStartup Inc.
Before virtualization: 20 physical servers running at 12% average utilization. Annual costs: $200,000 (hardware, power, cooling, space).
After virtualization: Consolidated to 4 physical servers running 60+ VMs at 70% utilization. Annual costs: $60,000. Savings: $140,000/year.
Interview Questions
- What is virtualization and why is it important for cloud computing?
Virtualization creates software-based abstractions of physical hardware, allowing multiple virtual systems on one physical machine. It is essential for cloud computing because it enables multi-tenancy, resource pooling, rapid provisioning, and efficient hardware utilization.
- What is the difference between a Type 1 and Type 2 hypervisor?
Type 1 (bare-metal) runs directly on hardware without a host OS (VMware ESXi, Hyper-V). Type 2 (hosted) runs on top of an existing OS (VirtualBox, VMware Workstation). Type 1 offers better performance and is used in production/cloud environments.
- How does virtualization improve server utilization?
Without virtualization, servers typically run at 10-15% utilization because each server hosts one application. Virtualization consolidates multiple workloads onto fewer physical servers, increasing utilization to 60-80% and reducing hardware, power, and space costs.
- What is the difference between virtualization and containerization?
Virtualization creates full virtual machines with separate OS instances, providing complete isolation but more resource overhead. Containerization shares the host OS kernel, offering lighter weight, faster startup, but less isolation than VMs.
- Explain VM live migration and its benefits.
Live migration moves a running VM from one physical host to another with zero downtime. Benefits include hardware maintenance without service interruption, load balancing across hosts, disaster avoidance, and power management optimization.
Exam Focus
Revise definitions, diagrams, examples, and short-answer points for Virtualization Basics.
Interview Use
Prepare one clear explanation, one practical example, and one common mistake for this Cloud Computing topic.
Search Terms
cloud-computing, cloud computing, cloud, computing, fundamentals, virtualization, basics, virtualization basics
Related Cloud Computing Topics