Virtualization and Hypervisors Study Notes
Virtualization
- Virtualization allows a single computer to function as multiple computers.
- Virtual environments simulate real-world scenarios inside a computer.
- Labs are transitioning to working directly within operating systems instead of relying on diagrams.
- Virtualization is useful because it allows users to run multiple operating systems on a single machine.
- Dual booting, an older method, involved partitioning a hard drive to install multiple operating systems, requiring a reboot to switch between them.
- Virtualization simplifies this process, allowing operating systems to be run simultaneously with a simple click.
Hypervisors
- A hypervisor enables running multiple operating systems (OSs) on a single system.
- It manages virtual machines (VMs), which are instances of these operating systems.
- A VM is a virtualized operating system running within a computer.
- Modern computers with multiple cores and ample RAM facilitate running multiple VMs.
- Each core can handle a separate VM, and resources are divided among them.
- The hypervisor manages resources, facilitates communication between VMs and the host system, and orchestrates the virtual environment.
Virtual Machine Security
- Virtual machines should be treated as separate computers.
- VMs can be infected with viruses and malware.
- It is important to exercise caution when downloading third-party software for VMs.
- VMs require patching and antivirus updates just like physical computers.
- Unmanaged VMs can pose a security risk to the host system and network.
Sandboxing
- Sandboxing involves creating isolated virtual environments for testing purposes.
- A virtual world is created that cannot contact the outside world to ensure isolation.
- Analysts replicate client systems in a virtual area to test patches and assess the impact of viruses.
- Snapshots of VMs can be taken to revert to a previous state after testing.
Virtual Networking
- Virtual networks can be configured with IP addresses, subnets, and masks, simulating a real network.
Types of Hypervisors
- Type 2 (Host-Based): Runs on top of an existing operating system (e.g., Windows).
- Type 1 (Bare Metal): Runs directly on the hardware without an underlying OS.
Type 2 Hypervisors:
- Used by normal users on their PCs.
- Hypervisor runs as an application within the host OS.
Type 1 Hypervisors
- Typically used in server environments.
- No host-based OS.
- The hypervisor is the first thing that loads when the machine is turned on.
Uses for Virtualization
Client-Side Virtualization
- Sandboxing: Testing applications, video games, patches, and updates in a safe environment.
- Testing Patches: Ensuring patches and updates do not negatively impact critical systems.
- Supporting Legacy Software and OSs: Running older programs in a secure, virtualized environment.
- Cross-Platform Virtualization: Running different operating systems (e.g., Linux, Mac) on a Windows machine.
Server-Side Virtualization
- Before virtualization, servers often operate independently and are underutilized.
- With virtualization, multiple servers can be consolidated onto a single physical server using a bare metal hypervisor.
- This improves resource utilization and efficiency.
- Virtualization allows one server to perform multiple tasks, maximizing the use of its resources.