Overview of Virtual Machines and Virtualization Software
Introduction
High-powered multi-core CPUs: Often underutilized; benefit from virtualization.
Virtual Computing: Enables multiple operating systems on a single physical system, leading to:
Reduced hardware and energy costs.
Features for data centers: rapid provisioning, load balancing, high availability, backup, disaster recovery.
Adaptable resources to meet customer needs.
Cloud Computing: Virtualization is fundamental, impacting all computer users and IT professionals.
Benefits for Workstation Environments:
Developers can test applications across platforms.
IT professionals pre-configure servers and deploy desktop environments.
Users can run multiple operating systems/applications simultaneously.
Additional features: system suspension, snapshotting for data recovery.
Learning Objectives: Understand capabilities, differences from traditional environments, and implementations using VMware, Microsoft, and Oracle virtualization products.
Overview of Virtual Machines and Virtualization Software
Traditional Computing:
Single operating system per physical computer.
OS manages hardware resources (CPU, memory, disk, I/O devices).
Hardware Dependency:
Moving an OS requires re-installation due to hardware-specific configurations.
Virtual Computing:
Frees OS from hardware constraints, allowing multiple environments.
Virtual Machines (VMs): Emulate dedicated systems with independent OS environments.
Hypervisor: Software layer to share hardware resources between physical hardware and operating system environments.
Creates VMs with their own virtual CPU, memory, hard disk, and network interface.
Views by guest OS like physical devices.
Hypervisor Types
Classification:
Type-1 Hypervisors (Bare Metal):
Run directly on physical hardware.
Offer better performance and security; essential for data centers.
Examples include VMware vSphere, Microsoft Hyper-V, and Xen Hypervisor.
Type-2 Hypervisors:
Require a host OS (Windows, Linux, Mac).
Examples include VMware Workstation, VMware Workstation Player, Oracle VirtualBox.
Easier installation; less hardware-specific; accessible for normal desktop use.
Historical Context
Early Virtualization Concepts: Originated from IBM mainframe technology in the 1970s.
VMware's Development: Founded in 1998, led early market share with advanced features.
Market Competition: VMware holds a significant share; faced competition from Microsoft and others (21% market share according to a 2014 Nasdaq poll).
Connectix & Virtual PC: Developed for running Windows on Mac; later bought by Microsoft to enhance their offerings.
Xen Hypervisor: Originated as a research project, made open source in 2002, leading to commercial use with Citrix and Oracle.
Virtualization Software Packages Overview
Leading Providers: VMware, Microsoft, Oracle providing both commercial and open-source solutions.
Licensing: Commercial products require purchase; free options exist for basic use.
Example: VMware vSphere is free but requires licensing for advanced management features.
How Virtualization Software Works with Virtual Machines
Traditional vs. Virtualized OS Interaction:
Traditional OS directly interacts with hardware.
Guest OS interacts via the hypervisor, sharing resources dynamically.
Hypervisor processes requests from guest OS, emulating hardware resource interaction.
Interaction Model: Hypervisor uses disk files to simulate hard drives; guest OS unaware of true hardware state.
File Structure for Virtual Machines
Files on Host Computer:
Each VM has:
Configuration File: Holds settings for RAM, CPUs, virtual disk info, network settings.
Virtual Disk File: Contains boot loader, OS files, applications visible as disk drives.
Memory Management:
Reserved portions of the host’s memory for each VM; impacts the number of VMs that can run.
Certain peripherals are shared but can only be used by one system at a time.
Hardware, Software, and Licensing Requirements
Processor Requirements
Essential Features:
Modern multi-core, 64-bit processors typically required since 2003.
Supports better performance due to hardware-assisted virtualization.
Intel and AMD Technologies:
Intel Virtualization Technology (Intel VT) and AMD Virtualization (AMD-V) enhance performance.
Enabling these in BIOS is necessary for installations.
Memory Requirements
Memory Calculation:
Must consider the host OS and all concurrent VMs.
Use overcommitment to allocate more VM memory than available, though this may impact performance.
Example calculation for VMs on an 8 GB RAM host.
Shadow Page Tables: Manage physical memory allocations for guest VMs; instances of memory overcommitment may require techniques like ballooning for performance.
Storage Requirements
Disk Space Calculations:
Sum storage for virtualization software, VMs, and host OS.
Storage Options:
Local storage versus shared (NAS, SAN) for different use cases.
Networking and Peripheral Requirements
Network Access: VMs can utilize host network interfaces; supports advanced virtualization features.
Peripheral Sharing: Only one VM may control a peripheral at a time; switching management covered in upcoming chapters.
Licensing Requirements
Licensing Models: Open-source vs. licensed systems; examples include Oracle VirtualBox and Microsoft’s bundled Hyper-V.
Activation Rules: Consistent with physical installations, requiring attention to licenses for VM use to avoid violations.