Thursday, 24 July 2025

Virtualization

 Unit 2  Virtualization

2.1 Introduction, Virtualization Reference Model,Characteristics of virtualized environment

2.2 Differentiate various types of Virtualization :Storage, Network , Desktop , Application server

2.3 Technology Examples

2.3.1 VMWare: Full Virtualization Reference Model

2.3.2 Xen: Architecture and Guest Operating SystemManagement

2.4 Definition and Life Cycle of Virtual Machine(VM),VM Migration: Concept and Techniques, VMConsolidation: Concepts, VM Management: Concepts

2.5 Advantages and Disadvantages of Virtualization

Here’s a clear explanation of the Virtualization Reference Model and the Characteristics of a Virtualized Environment, ideal for quick study or viva prep:


🔷 Virtualization Reference Model

  • Virtualization is a technique that allows a single physical instance (application/resource) to be shared among multiple organizations or customers (tenants).
  • "Virtual" means not physically real; it can include virtual versions of hardware, software, storage, networks, etc.
  • It involves creating virtual copies of servers, networks, OS, or resources that behave like real systems for users.
  • It works by assigning a logical name to a physical resource and offering a pointer to access it as needed.

 

INTRODUCTION TO VIRTUALIZATION

  • A rapidly growing technology transforming IT and computing methods.
  • Helps reduce hardware usage, save energy, cut costs, and allows multiple apps/OS on one server.

Purpose of Virtualization:

Virtualization provides an abstract environment to run applications using:

  • Abstraction: Hides complex resource details to simplify usage.
  • Replication: Enables creation of multiple instances for easier management.
  • Isolation: Separates client usage to improve security.

 

The Virtualization Reference Model defines how virtualization is structured in a computing environment. It includes key components:

🔸 1. Hardware

      The physical machine (server, CPU, memory, storage).

🔸 2. Host Operating System

(optional in some types like bare-metal hypervisors)

      Controls hardware directly and may run the virtualization layer on top.

🔸 3. Hypervisor (VMM - Virtual Machine Monitor)

      Core part of virtualization.

      Manages virtual machines and distributes hardware resources.

      Two types:

      Type 1 (Bare-metal) – Runs directly on hardware.

      Type 2 (Hosted) – Runs on a host OS.

🔸 4. Virtual Machines (VMs)

      Multiple isolated instances that act like real computers.

      Each VM has:

      Virtual CPU

      Virtual RAM

      Virtual Disk

      Virtual Network Interface

🔸 5. Guest Operating Systems

      OS installed on VMs (like Windows, Linux, etc.).

🔸 6. Applications

      User-level software running inside each VM.

📌 Need/Importance of Virtualization

  • Virtualization creates a virtual version of hardware, software, storage, or network devices.
  • It enables multiple OS and applications to run on the same physical machine.
  • A single physical resource is divided into multiple logical partitions, shared by multiple users.
  • It's a key component of cloud computing, especially for infrastructure-based services.
  • Offers secure, customizable, isolated execution environments—even for untrusted apps.
  • Benefits:
    • Better resource management
    • Secure remote access
    • Data loss prevention
    • Time & energy saving, cost reduction, and risk minimization

🔷 Major Needs of Virtualization

1.    Enhanced Performance

o   PCs have more power than needed.

o   Virtual machines can run efficiently using unused power.

2.    Limited Use of Hardware and Software Resources

o   Prevents under-utilization.

o   Allows 24×7 use of PCs and servers.

o   Improves IT infrastructure efficiency.

3.    Shortage of Space

o   Demand for computing leads to higher data center costs.

o   Virtualization enables server consolidation, reducing the need for physical expansion.

4.    Eco-Friendly Initiatives

o   Reduces power consumption.

o   Data centers consume lots of energy; virtualization minimizes waste.

5.    Administrative Costs (described later, possibly on next page)

o   Expected to refer to cost savings in maintenance, deployment, and scaling.

🌟 Characteristics of a Virtualized Environment

1.    Isolation

      Each VM is separated from others; one crash doesn’t affect others.

2.    Hardware Independence

      VMs can run on any hardware as long as the hypervisor supports it.

3.    Resource Sharing

      Multiple VMs share physical resources like CPU, memory, and storage.

4.    Portability

      VMs can be moved easily from one server to another.

5.    Snapshot and Backup

      You can take VM snapshots (full state backup) and restore anytime.

6.    Security

      Enhanced by isolation; vulnerabilities in one VM do not spread.

7.    Scalability

      Resources can be added or removed dynamically.

8.    Flexibility

      Allows running different OSes on a single hardware system.

🔧 Working of Virtualization

  • Enables sharing of virtual copies of physical resources or apps among users/organizations.
  • IT professionals use special software to create multiple virtual versions of one resource.
  • Each virtual version behaves like a unique physical resource with a logical name.
  • When a user requests access, the system provides a pointer to the physical resource.
  • Hypervisor: A software/firmware that manages VMs (virtual machines); acts like an operating system.
  • The host machine runs the virtual environment; the guest machine is the created VM.

Benefits of Virtualization

1.    Cost Savings – Reduces costs and is easy to maintain.

2.    Multiple OS Support – Run multiple OS on one platform.

3.    Less Dependence on Hardware – No need for heavy hardware.

4.    Server Consolidation – Useful for managing crashes and server loads.

5.    Reliability – Critical operations are supported via virtual servers.

6.    Quick Resource Availability – Faster than accessing physical resources.

7.    On-demand Resource Access – Cloud vendor provides resources in virtual form, reducing downtime.


🔄 Difference between Virtualization and Cloud Computing

Sr. No.

Virtualization

Cloud Computing

1

Creates multiple copies of hardware/software on the same machine

On-demand access to copies on the same machine

2

Simple to set up

Complicated setup process

3

Requires proper authentication before access

Can be accessed anywhere, anytime

4

More cost-efficient

Can be costlier

🔷 2.1.1 Virtualization Reference Model

The reference model includes three major components in a virtualized environment:

1. Guest

  • Interacts with the virtualization layer, not the physical system.
  • Contains virtual disk files, VM definition file, and applications.
  • Treated as separate by the system; each is managed like a distinct application.

2. Host

  • Represents the original physical environment.
  • Manages all physical resources (hardware, storage, network).
  • Shares resources with the guest via the virtualization layer.

3. Virtualization Layer

  • Sits between guest and host.
  • Creates a virtual environment for the guest.
  • Provides abstraction and software emulation to simulate hardware, storage, and networking.

🔽 Diagram Summary (Fig. 2.3)

Guest Virtual Image / Apps

    ↑

Virtualization Layer Virtual hardware, storage, networking

    ↑

Software Emulation

    ↑

Host Physical hardware, storage, networking

🔸 2.1.2 Characteristics of Virtualized Environment

🔹 What is it?

  • Virtualization refers to creating virtual versions of hardware, software, storage, or networks.
  • Involves the Guest, Host, and Virtualization Layer.

Key Characteristic:

1. Increased Security

  • Virtualization isolates guest programs, controlling their execution securely.
  • Enables safe and transparent execution of programs.
  • Guest operations are processed in the virtual machine and translated/applied to host systems.
  • Guest programs can be monitored, filtered, and isolated to prevent harmful operations.
  • Untrusted code can be tested in sandboxed environments (e.g., Cuckoo sandbox or JVM security policies).

2. Managed Execution

Virtualization enables advanced features like:

🔹 Sharing

  • Allows multiple separate computing environments to exist on the same host.
  • Helps reduce the number of physical servers less power consumption.

🔹 Aggregation

  • Opposite of sharing: multiple physical hosts act as a single virtual host.
  • Uses cluster management software to combine systems and manage them as one.

🔹 Emulation

  • Guest programs can run in an environment that mimics (emulates) required features.
  • Makes it possible to run programs needing features not present on the physical host.

🔹 Isolation

  • Each guest operates in a completely separate space.
  • Prevents interference, enhances security, and protects host from guest activity.

3. Portability

Virtual machines can run on different platforms depending on the virtualization type:

  • Hardware Virtualization:
    • Guest is in a virtual image that can run on different hardware without issues.
  • Programming-Level Virtualization (e.g., JVM, .NET):
    • Code (like .jar or .exe) can run without changes across compatible environments.

🛠️ Additional Feature: Performance Tuning

  • Fine-tunes guest program performance by adjusting how hardware resources are exposed.
  • Helps support Quality of Service (QoS) for efficient and optimized execution.

2.2 TYPES OF VIRTUALIZATION

  • Virtualization uses emulation techniques for various computing areas.
  • It includes creating virtual versions of:
    • Hardware devices
    • Storage devices
    • Network resources
  • Virtualization enables easier cloud computing implementation.
  • Major types of virtualization include:
    • Storage Virtualization
    • Hardware Virtualization
    • Operating System Virtualization
    • Network Virtualization
    • Desktop Virtualization
    • Application Virtualization
    • Server Virtualization

🔹 2.2.1 Hardware Virtualization

📌 Definition:

  • It means creating virtual physical hardware resources accessible by multiple users at the same time.

🧠 Key Points:

  • Creating VMs (Virtual Machines) over physical hardware is called hardware virtualization.
  • VMs are logically separated from the real hardware, allowing multiple OS on the same machine.
  • The software controlling VMs is called the Hypervisor.
    • It manages shared physical resources between cloud providers and users.
  • The Virtual Machine Manager (VMM):
    • Is the core component of hardware virtualization.
    • Manages memory, CPU, and program execution.
  • Provides an abstract execution environment for the guest OS.

🖥️ Hardware Virtualization Model:

  • Guest = OS
  • Host = Physical machine
  • Virtual Machine = Created using software emulation
  • Hypervisor = Controls everything between hardware and VM

🔷 Concept of Hypervisor / Virtual Machine Manager (VMM)

  • The Hypervisor is a software or firmware that creates and manages virtual machines (VMs) by abstracting the physical hardware.
  • It is the core component of hardware virtualization.

📌 Types of Hypervisor:

1. Type-1 Hypervisor (Bare-metal / Native)

  • Runs directly on hardware without any base operating system.
  • Controls hardware resources and manages guest OS.
  • Examples: VMware vSphere, KVM, Oracle VM, Citrix Hypervisor.

2. Type-2 Hypervisor (Hosted)

  • Runs within the host operating system.
  • Acts as a second layer above the OS.
  • Examples: Oracle VM VirtualBox, VMware Workstation Pro, Windows Virtual PC.

Hypervisor Benefits:

  • Multiple guest OS can run on a single physical machine.
  • Separates CPU, RAM, and other hardware for each VM.
  • VMs are isolated, so an attack on one doesn't affect others.
  • Diagram (Fig. 2.5) shows:
    • Type 1: Hypervisor directly on hardware.
    • Type 2: Hypervisor on top of host OS.

🔶 Full Virtualization

📌 Definition:

  • Allows a guest OS to run as if on real hardware, with no modifications needed.
  • The VMM completely emulates the underlying hardware.

🧠 Key Points:

  • Enables complete simulation of hardware.
  • Guest OS runs in isolation from the host.
  • Used for running unmodified OS or programs on virtual environments.
  • In full virtualization, apps run on the guest OS as they would on actual hardware.

🖥️ How it works:

  • The Guest OS runs on top of the hypervisor without knowing it’s virtualized.
  • It sends commands directly to simulated hardware.
  • Refer Fig. 2.6 for a visual explanation.

🔷 Advantages of Full Virtualization:

1.    Combines old and new systems for better hardware use and efficiency.

2.    Reduces cost of maintaining or upgrading old systems.

3.    Improves underperforming systems by maximizing hardware usage.

4.    Strong isolation and security for each virtual machine.


🔶 Limitations of Full Virtualization:

1.    Slightly slower due to heavy emulation overhead.

2.    Device driver issues: Hypervisor includes drivers that may be harder for users to install.


🔶 Para-Virtualization

📌 Definition:

  • A semi-transparent virtualization method where the guest OS is modified to work efficiently with the virtual machine.

Key Features:

  • Exposes a software interface to VMs that requires modification of the guest OS.
  • Allows performance-critical tasks to be executed directly on the host hardware, improving speed.
  • Easier for VMMs to manage as they pass hard-to-virtualize tasks to the host.

🔧 Requirements:

  • Guest OS must be modified, so it needs source code access.
  • Mostly used in open-source or academic environments.

🛠️ Example:

  • Xen Hypervisor supports para-virtualization for Linux-based systems.

Refer Fig. 2.7 to see the architecture of para-virtualization.

1.    pport – Can run multiple OSes on one server.

2.    Improved Efficiency – Boosts performance without adding much overhead from the host OS.


⚠️ Limitations of Para-virtualization

1.    Guest OS must be modified, which isn’t always possible.

2.    Needs extra maintenance and support in real-world (production) environments.


💻 Hardware Assisted Virtualization

  • A type of Full Virtualization using hardware support (instead of just software).
  • Hardware (CPU) includes special instructions to help virtualize the system efficiently.
  • Helps the guest OS run privileged instructions directly on hardware safely.
  • Common feature in modern processors is called Hypervisor support.

📌 If hardware support doesn’t exist:

  • Full Virtualization can still work using software like Dynamic Recompilation (host rewrites guest instructions to run them safely).

🔁 Hybrid Virtualization

  • Mix of Para-virtualization and Full Virtualization.
  • Uses para-virtualization for specific drivers (like I/O), and full virtualization for the rest.
  • Guest OS doesn't need full para-virtualization, just specific drivers.
  • Offers a balance of compatibility and performance.

🔧 Benefits of Hardware Virtualization

1.    Cost ReductionOne physical machine can run multiple virtual systems saves hardware cost.

2.    Better Resource UseHardware is used efficiently across multiple VMs.

3.    Backup & RecoveryEasy to backup virtual machines and restore them in case of failure.

💻 Software Virtualization

🔹 Definition:

  • Software virtualization abstracts software installation and provides access to virtual applications or OS.
  • It lets a server run multiple operating systems or applications in virtual environments.

🔹 Purpose:

  • To emulate the entire computer system, allowing different OSes or apps to run independently on one machine.
  • Common tools: VMware, VirtualBox.

🔸 Types of Software Virtualization:

1.    Operating System Virtualization:

o   Multiple OSes run on the same hardware.

o   They operate independently without interference.

2.    Application Virtualization:

o   Runs individual applications in virtual environments, separated from the main OS.

o   Example: Run Linux apps on Windows without changing machine setup.

o   Common in cloud computing for remote application access.

3.    Service Virtualization:

o   Used in testing.

o   Simulates parts of complex systems for testing when certain components are unavailable or incomplete.


Advantages of Software Virtualization:

1.    Cost Efficiency – Fewer physical servers lower hardware cost.

2.    Scalability – Easy to add/remove VMs as needed.

3.    Backup – Allows backup of the entire OS or apps.

4.    Flexibility – Run different OSes and apps based on organization needs.

5.    Efficient and Secure – Use one system to run many VMs securely; protected from viruses.

6.    Simple Management – Easy to manage and update apps or OS.


🖥️ Server Virtualization

🔹 Definition:

  • Divides one physical server into multiple virtual servers.
  • Boosts resource utilization and organizational productivity.
  • Users interact with the server in virtual form (not physical).

Server Virtualization

In server virtualization, a physical server is divided into multiple virtual servers, which work like independent devices.

Key Points:

  • Each virtual server behaves like a separate physical device.
  • A software (called a hypervisor) divides the physical server.
  • Each virtual server runs its own operating system independently.
  • Host = physical server
    Guests = virtual servers

Benefits of Server Virtualization:

1.    Cost Efficient – Reduces the need for buying physical servers.

2.    Improved Efficiency – Allows multiple tasks to run on a single server simultaneously.

3.    Increased Uptime – Easier to upgrade, share resources, and recover quickly.

4.    Independent Environment – Each user gets a secure, isolated virtual space.

Disadvantages of Server Virtualization:

1.    High implementation costs.

2.    Requires effort to manage and monitor environments.

3.    If the physical server fails, all virtual servers go down.

4.    Needs skilled IT staff.

5.    High upfront costs.

6.    Security risks.

7.    Resource availability issues.


Execution Virtualization

Refers to running virtual environments for executing programs, divided into:

1.    Process-level techniques – Run on top of an existing OS with full hardware access.

2.    System-level techniques – Run directly on hardware with minimal or no OS support.

These techniques help simulate different environments using:

  • Bare hardware
  • OS resources
  • Programming languages
  • Application libraries

🔧 Execution Virtualization

Execution virtualization supports running different types of programs or systems by abstracting the underlying hardware or software. It can work on:

  • An operating system
  • A binary specification
  • An application
  • An abstract machine model

Key Points:

  • Can be implemented directly on hardware or over OS/libraries.
  • Enables multitasking and coexistence of different execution environments.
  • Simplifies development by hiding hardware-level complexities.

🧱 Machine Reference Model

This model shows the layers of abstraction in a computing environment.

📊 Purpose:

  • Defines interfaces between abstraction layers.
  • Supports virtualization by allowing one layer to emulate or interact with another.

🧩 Layers (Bottom to Top):

1.    Hardware: Physical components (CPU, memory, etc.)

2.    ISA (Instruction Set Architecture):

o   Defines processor instructions, registers, memory.

o   Interface between hardware and OS.

o   Important for OS developers (System ISA) and app developers (User ISA).

3.    Operating System:

o   Manages hardware, system resources, and execution.

4.    ABI (Application Binary Interface):

o   Interface between OS and application/libraries.

o   Defines system calls, data types, alignment, calling conventions.

5.    Libraries

6.    API (Application Programming Interface):

o   Interface for applications to interact with libraries or OS.


🔁 Working Together:

  • API ABI ISA Hardware
  • High-level application instructions are converted into machine-level operations.
  • These layers allow:
    • Isolation
    • Modular development
    • Multitasking

🖼️ Diagram (Fig. 2.9):

Depicts two paths:

  • Left: Shows layered structure from application to hardware.
  • Right: Shows direct mappings like user ISA being used by applications directly.

Conclusion:

The Machine Reference Model:

  • Simplifies system implementation.
  • Allows virtualization by separating abstraction levels.
  • Supports multitasking and multiple execution environments.

🛡️ Privilege Levels and Execution Modes

Modern CPUs use privilege levels to control access to hardware and sensitive system functions.

Two Primary Privilege Levels:

1.    User Mode:

o   Limited access to memory and peripherals.

o   Used by applications and general user programs.

o   Cannot execute privileged instructions.

2.    Kernel Mode (Supervisor Mode):

o   Full access to memory, CPU instructions, and peripherals.

o   Used by the operating system.

o   Automatically entered when needed, e.g., for memory management or I/O tasks.


🔄 Instruction Types:

  • Non-Privileged Instructions:
    • Can be executed in user mode.
    • Do not impact shared resources.
    • Examples: arithmetic, logic operations.
  • Privileged Instructions:
    • Require kernel mode.
    • Involve sensitive operations:
      • Behavior-sensitive: Affect I/O or CPU registers.
      • Control-sensitive: Modify system states.

🔐 Security Rings (Fig. 2.10)

A ring-based architecture divides privilege into levels, from most to least privileged:

Ring

Privilege Level

Used By

0

Most Privileged

Kernel (Supervisor mode)

1

Less privileged

OS-level services

2

Even less privileged

OS-level services

3

Least Privileged

User applications (User mode)

  • Ring 0: Can execute all instructions.
  • Ring 3: Restricted to non-privileged instructions.
  • Modern systems: Usually implement only Ring 0 (Kernel) and Ring 3 (User).

📌 Key Points:

  • Privilege levels protect system integrity by controlling access.
  • Layered security ensures that user programs can’t directly harm system resources.
  • Systems switch between user mode and kernel mode as needed (e.g., during system calls).

🧠 Key Concepts Before OS Virtualization

  • Supervisor/Kernel Mode: Used by the OS or hypervisor to manage hardware-level operations securely.
  • User Mode: Has restricted access to system resources.
  • Hypervisor runs in supervisor mode because it needs to execute privileged instructions.
  • Original ISAs allowed some privileged instructions in user mode, causing virtualization issues.
  • Modern solutions like Intel VT and AMD Pacifica resolved this by marking such instructions as privileged.
  • This ensures multiple OSes can coexist securely under a single hypervisor.

🖥️ 2.2.5 Operating System Virtualization

📌 Definition:

OS virtualization allows multiple user-space instances (e.g., containers) to run on the same OS kernel concurrently.


Key Features:

  • No need for a hypervisor or virtual machine manager.
  • Multiple isolated environments run on a single OS kernel.
  • Resources like memory, file systems, and processes are isolated and independently managed.

⚙️ Role of Kernel:

  • Shares system resources across instances.
  • Prevents one instance from interfering with another.

🗂️ User Space Instance:

  • Has its own file system view, IP address, devices, and configuration.
  • Completely isolated from other instances.

🐧 Unix-based Systems & chroot:

  • OS-level virtualization evolved from the chroot mechanism in Unix.
  • chroot: Changes root directory for a process and its children isolates file system access.
  • Prevents access to any file system outside the new root.

🔒 Security & Isolation:

  • Achieved through namespace separation, IP isolation, and process isolation.
  • Helps run multiple execution containers for applications (e.g., Docker).

📚 Summary Table: Hardware vs OS Virtualization

Feature

Hardware Virtualization

OS Virtualization

Uses Hypervisor?

Yes

No

Kernel per Instance

Separate per VM

Shared kernel

Resource Isolation

High

Moderate to High (via namespaces)

Example Technology

VMware, Hyper-V

Docker, LXC

Overhead

Higher

Lower

🖥️ Advantages of OS-Level Virtualization

  • Minimal Overhead: No emulation or hardware-specific instructions needed.
  • No App/Hardware Modification: Applications run natively using OS system calls.
  • Efficient Server Consolidation: Multiple services can share the same OS and be isolated.
  • Shared Technology Stack: Operating system, frameworks, and components are reused.

📦 Examples of OS-Level Virtualization Technologies:

  • FreeBSD Jails
  • IBM LPAR (Logical Partition)
  • Solaris Zones & Containers
  • Parallels Virtuozzo Containers
  • OpenVZ
  • iCore Virtual Accounts
  • FreeVPS (Virtual Private Server)

🔧 Uses of OS Virtualization:

  • Virtual hosting environments.
  • Secure allocation of limited hardware resources.
  • Isolating services/applications into different containers.
  • Server hardware optimization.
  • Improved security through separation.

🪟 1. Windows Virtualization:

  • Enables virtualization on Windows OS.
  • Runs Windows-based virtual machines.
  • Each VM is independent but uses the Windows OS’s underlying resources.
  • Tools: VMware, etc.

🐧 2. Linux Virtualization:

  • Enables virtualization on Linux OS.
  • Supports running multiple VMs using Linux kernel's features.
  • Tools: Xen, KVM, VirtualBox, VMware.
  • Resources and processes can be shared and divided among VMs.

Advantages of OS Virtualization:

1.    Low Overhead – More efficient than full virtualization.

2.    Live Migration – Can move containers/instances without downtime.

3.    Dynamic Load Balancing – Containers can be moved across nodes or clusters.


🔜 Coming Up Next: Storage Virtualization (brief intro from image):

  • Combines multiple storage devices into logical volumes.
  • Helps improve efficiency, management, and security.

What is Storage Virtualization?

  • Definition: It is the grouping of physical storage devices into a single logical storage pool, which is then used by servers or hosts as if it were a single device.
  • Partitioning: This pool is divided into multiple logical storage forms and assigned to users or systems.
  • Functionality: These logical forms behave like real physical storage for the users or servers.

Purpose and Benefits

  • Data Security: Data is stored on the cloud, ensuring safety and protection.
  • Centralized Storage: Appears to users as a centralized system, hiding the complexity of physical storage.
  • Virtual Copies: Users interact with virtual copies of storage, not the actual hardware.
  • Vendor Flexibility: Can integrate devices from different vendors and networks.

Key Features and Uses

  • Abstract Physical Storage: Separates physical hardware management from users.
  • Logical Path Access: Users don’t need to know the physical location of data.
  • Efficiency: Helps manage a wide range of storage types under one system.
  • Network-based Virtualization: Often implemented using Storage Area Networks (SANs).
  • Backup & Recovery: Enables data backup and ensures recovery.

Characteristics of Storage Virtualization

  • Separation from Physical Constraints: Logical volumes are independent of physical hardware limitations.
  • Multi-vendor Integration: Combines storage from different vendors into one pool.
  • Automated Management: Optimizes and manages storage automatically (common in cloud storage).
  • Efficiency: Allows quick, reliable data storage and retrieval.
  • Backup Support: Simplifies creating and restoring backups.

Diagram Explanation (Fig. 2.11)

  • Shows multiple servers connected to a virtual storage layer.
  • This layer is divided into pools (A, B, C).
  • Each pool maps to physical storage disks beneath it, abstracting them from users.

🔹 Types of Storage Virtualization:

1.    Block Level Virtualization

o   Separates logical storage from physical storage at block level.

o   User/host accesses logical blocks, not physical ones.

o   Examples: IBM SVC, EMC VPLEX.

2.    File Level Virtualization

o   Separates file systems from physical storage.

o   Clients and admins access files/folders directly.

o   Examples: NAS solutions like NetApp.

3.    Object-Based Storage

o   Stores data as objects instead of files or blocks.

o   Examples: AWS S3, Ceph.


🔹 Methods of Storage Virtualization:

1.    Server-Based Virtualization

o   A management program is installed on the host server.

o   Leverages existing SAN without modification.

2.    Fabric-Based Virtualization

o   Implemented via network switches or appliance servers.

o   Devices like switches, routers, servers handle virtualization.

o   Reduces pressure on the SAN and servers.

3.    Storage Array-Based Virtualization

o   Done at the storage system level, using storage arrays.

o   Arrays can be HDDs or SSDs.


🔹 Benefits of Storage Virtualization:

1.    Enhanced Storage UtilizationAggregates multiple storage devices efficiently.

2.    Highly ScalableCan grow storage with demand.

3.    SavingsReduces hardware costs using existing infrastructure.

4.    Very High AvailabilitySupports redundancy and failover.

5.    Improved PerformanceDynamically balances workloads.

6.    Data Migration Made EasierSimplifies moving data between systems.

7.    Easy Retrieval and StorageQuick access to data.

8.    Easy and Simple Data MigrationFast and smooth movement of data.

9.    Easy and Secure StorageSecure protocols ensure data safety.


🔹 Introduction to Network Virtualization (Section 2.2.7):

  • Definition: Creation of virtual networks using hardware, software, and network functionality.
  • Purpose: Automates network tasks and improves management.
  • Function: Combines switches, routers, servers into a single virtual network.
  • Benefits:
    • Boosts productivity and efficiency
    • Enhances speed, reliability, security, and flexibility

🔷 Network Virtualization Overview

  • Definition: Network virtualization is the creation of virtual networks that combine hardware and software resources to simplify network infrastructure and automate management.
  • It allows multiple secure virtual connections over a single physical network.

🔹 Types of Network Virtualization

1.    External Network Virtualization

o   Aggregates multiple physical networks into one logical network.

o   Example: Virtual LAN (VLAN) – acts like devices are on the same broadcast domain.

2.    Internal Network Virtualization

o   Provides virtual network interfaces within a single system.

o   Enables virtual machines or guests to share or emulate network interfaces.


🔹 Implementation Options (Internal Virtualization)

  • Guest can use host’s network interface via NAT.
  • A virtual machine manager can emulate and install additional network devices.
  • A guest can have a private network isolated from others.

🔹 Popular Forms of Network Virtualization

1.    Virtual LAN (VLAN)

o   Based on IEEE 802.1Q standard.

o   Creates logical segments within a shared network.

o   Allows traffic separation, resource allocation, and better management.

2.    Virtual IP (VIP)

o   An IP not linked to a specific machine.

o   Used for redundancy and load-balancing.

o   Packets are sent to VIP and then redirected to the actual machine.

3.    Virtual Private Network (VPN)

o   Creates secure tunnels over public networks.

o   Protects confidential data and allows remote access.

o   Simulates a real network environment without hardware changes.


🔹 Benefits of Network Virtualization

1.    Enhanced Network Security

o   Isolates virtual networks to reduce unauthorized access and data breaches.

2.    Increased Flexibility and Scalability

o   Easily scale and adapt to changing network requirements.

3.    Improved Resource Management

o   Resources can be pooled and allocated efficiently, reducing the need for new hardware.

o   Enables quick resource reallocation for changing needs.

o   Lowers cost by improving utilization of existing infrastructure.

4.    Network Productivity and Capability

o   Enhances speed and reliability by enabling multiple users to run systems efficiently.

o   Supports high-performance applications with separate network channels.


🔷 Section 2.2.8: Desktop Virtualization

🔹 Definition

  • A technique that allows deployment of simulated desktop environments on hosted, centralized, or remote servers.
  • Users can access their desktop from any device, remotely.

🔹 Key Features

  • Remote Access: Users access desktops on any device, anywhere.
  • Centralized Management: Easier updates, security checks, and configurations.
  • Abstraction: Desktop environment is abstracted from physical device.
  • Client/Server Model: Uses centralized servers to provide access to desktop environments.
  • Similar to Hardware Virtualization: Access a desktop OS that runs on another host via network.

🔹 Examples of Desktop Virtualization Tools

  • Windows Remote Services, VNC, X Server
  • Cloud-based infrastructure:
    • Sun Virtual Desktop Infrastructure (VDI)
    • Parallels Virtual Desktop Infrastructure
    • Citrix XenDesktop

🔹 Benefits

  • Lower TCO (Total Cost of Ownership)
  • Better security and centralized control
  • Reduced energy and hardware costs
  • Less downtime

🔹 Limitations

  • Difficult to manage devices like printers.
  • Downtime risk if network fails.
  • Higher complexity and cost in large-scale (VDI) deployment.
  • Security concerns if poorly managed.

🔷 2.2.9 Application Server Virtualization

🔹 Definition

  • Application Server Virtualization (ASV) abstracts a group of application servers into a single virtual application server.
  • This is done using load balancing and high-availability strategies.

🔹 Also Known As

  • Advanced Load Balancing

🔹 Key Features

  • Distributes workloads across multiple servers or applications.
  • Manages the application as a single virtual instance.
  • Provides better network security:
    • Only one server is exposed to the public; others stay hidden behind reverse proxy or security layers.
  • Offers high availability for hosted services, improving performance and reliability.
  • Focuses on quality of service rather than emulating new environments.

🔷 2.3 Technology Examples

🔹 Xen

  • Open-source virtualization platform
  • Provides VMM (Virtual Machine Monitor) for running multiple virtual machines.

🔹 VMware

  • A cloud service provider offering tools for deployment, operation, and management of cloud infrastructure.
  • Known for agile and flexible cloud services.

🔷 2.3.1 VMware – Detailed Notes

🔹 Core Concepts

  • Based on full virtualization: Guest OS runs unmodified.
  • Uses:
    • Direct execution for non-sensitive instructions.
    • Binary translation for sensitive instructions.

🔹 Types of VMware Hypervisors:

  • Type-2: Runs on a desktop OS.
  • Type-1: Runs directly on the server hardware.

🔹 Capabilities & Tools

  • Specializes in virtualizing x86 architectures.
  • Offers tools for both desktop and server virtualization environments.

🔹 Hardware Virtualization Support

  • Introduced with Intel VT-x and AMD-V in 2006.
  • Before this, dynamic binary translation was used.
  • Allows running unmodified x86 OS in a virtual environment.

🔹 Memory Virtualization

  • Uses Memory Management Unit (MMU) virtualization.
  • Virtual MMU may need to be emulated if hardware MMU support is missing.
  • Performance may suffer, especially with TLB (Translation Lookaside Buffer) misses.

Final Summary Offering:

You’ve now shared 5 detailed pages covering:

  • Storage Virtualization
  • Network Virtualization
  • Desktop Virtualization
  • Application Server Virtualization
  • Technology Examples (Xen, VMware)

🔷 Advantages of VMware

1.    Security

o   Follows a zero-trust model.

o   Ensures robust security for applications and data.

2.    Efficiency and Performance

o   Optimizes CPU and memory usage.

o   Enables faster deployments, reduces downtime.

o   Improves overall data center efficiency.

3.    Flexibility and Scalability

o   Infrastructure can be scaled up/down as needed.

o   Supports rapid business changes with ease.

4.    Cost Savings

o   Consolidates servers fewer physical machines.

o   Saves on energy, hardware, and data center space.


🔷 Types of VMware

  • VMware offers solutions across:
    • End-user/Desktop Virtualization
    • Server Virtualization
    • Infrastructure Virtualization

🔷 End-user or Desktop Virtualization

  • Virtualizes operating systems and single-user apps.
  • Allows multiple OS and apps in an isolated environment on a host machine.
  • Examples:
    • VMware Workstation (Windows)
    • VMware Fusion (macOS)

🔹 Features

  • Access to USB, file sharing, and GUI of the host OS.
  • Supports multiple VMs running different OSes.

🔷 Diagram: Architecture of VMware Workstation (Fig 2.12)

Components:

  • User Applications
  • Guest Operating System within Virtual Machine Instance
  • VMware Workstation manages VMs from the Host Operating System
  • VMware Hypervisor (VMM):
    • Direct access to hardware (I/O, CPU, etc.)
    • Manages VM state (save/restore)

Note:
The VM environment is fully virtualized with access to host system resources like USB, network, etc., but isolated from the host OS.

🔷 Continued: VMware Desktop Virtualization

🔹 Key Services via Host Driver:

  • Privileged Mode: A virtual machine manager runs in privileged mode.
  • I/O Processing: VMware processes special I/O requests by passing them to the host OS via system calls.

🔹 Architecture Name:

  • Known as Hosted Virtual Machine Architecture.
  • Allows good performance and isolation within the host OS’s memory space.
  • Requires binary translation for instructions like I/O and memory access.

🔹 Instruction Management:

  • Managed by the Virtual Machine Manager (VMM):
    • Controls CPU and Memory Management Unit (MMU)
    • Alternates VM and host OS activities.

🔹 VM Image Handling:

  • VMware Workstation and Fusion support:
    • Creation of new images
    • Snapshots
    • Undo operations

🔹 Other VMware Desktop Tools:

  • VMware Player: Lightweight version of Workstation for Windows/Linux VM use.
  • VMware ACE: Policy-based VM deployment on end-user systems.
  • VMware ThinApp: Isolated application virtualization, avoids versioning conflicts.

🔷 Server Virtualization

🔹 Definition:

  • Most active segment of virtualization today.
  • Converts one physical server into many virtual servers.
  • Used by VMware, Microsoft, Citrix, etc.

🔹 Key Concept: Hypervisor (Virtual Machine Monitor - VMM)

  • Software layer that intercepts OS system calls to hardware.
  • Provides virtual CPU and memory for each guest OS.

🔹 History:

  • Term "hypervisor" originated with IBM CP-370.
  • VMware GSX Server was one of the first commercial server virtualization tools.

🔹 Features:

  • Replicates desktop virtualization model for server environments.
  • Adds remote management and scripting support.

🔹 Diagram: Fig. 2.13 – VMware Server Architecture

Components:

  • Host OS with VMware Driver
  • VMware Hypervisor (VMM) manages:
    • Hardware access
    • VM CPU/memory
    • Networking and state handling
  • VM Instances (multiple VMs run on a single host)
  • Web Server and Services interact with the VMs

🔷 Infrastructure Virtualization

🔹 Overview:

  • Purpose: Virtualization of web servers and overall IT infrastructure.
  • A daemon process called "serverd" manages VMware application processes.
  • Applications are connected to virtual machines (VMs) via the VMware driver in the host OS.
  • VMM (Virtual Machine Monitor) manages VM instances.

🔹 VMware Infrastructure (VI):

VMware Infrastructure is a comprehensive virtualization suite designed to:

  • Provide application availability, resource optimization, management, and automation.
  • Integrate and virtualize hardware resources across multiple systems.
  • Offer virtual resource pools to the datacenter.
  • Deliver features like:
    • High availability (HA)
    • Consolidated backup
    • Fine-grain resource allocation
    • Policy-driven management
    • Automation of operational tasks

🔹 Key Benefits:

  • Distributed architecture for:
    • Cost-effective service delivery
    • SLA (Service Level Agreement) fulfillment
    • Scalable IT operations

📊 Fig. 2.14 – Infrastructure Virtualization in VMware

🔸 Components:

1.    Management Layer:

o   VI Client, VI Web Access, VI SDK

o   Controlled by VirtualCenter Management Server

o   Services: DRS (Distributed Resource Scheduler), HA, Consolidated Backup

2.    Execution Layer:

o   Virtual machines (apps + OS)

o   Underlying platforms: Virtual SMP, ESX Servers, VMFS

3.    Physical Layer:

o   Enterprise servers, network, and storage infrastructure


🔷 Continued: Infrastructure Virtualization (VMware)

Key Components:

1.    VMware ESX Server

o   Core virtualization layer. Runs on physical servers to host VMs using hardware resources (CPU, memory, storage, network).

2.    VirtualCenter Management Server

o   Central point for managing/configuring virtual environments.

3.    VMware High Availability (HA)

o   Auto restarts VMs in case of server failure; ensures minimal downtime.

4.    VI Client (Virtual Infrastructure Client)

o   Connects from any Windows PC to manage VMs remotely.

5.    VI Web Access

o   Web-based VM access and management.

6.    VMware Virtual Machine File System (VMFS)

o   High-performance clustered file system for ESX Server VMs.

7.    VMware Virtual SMP

o   Supports multi-processor VM execution.

8.    VMware vMotion

o   Live migration of VMs between servers without downtime.

9.    VMware Backup

o   Centralized backup with low overhead on ESX servers.

10.   VMware SDK

o   Standard development interface for VMware integration.

11.                       DRS (Distributed Resource Scheduler)

o   Allocates and balances computing resources across VMs dynamically.


🔶 Section 2.3.2: Xen (Architecture and Guest Operating System Management)

🔹 Overview:

  • Xen is a Type-1 (BareMetal) hypervisor—runs directly on hardware, supports running multiple OSs on a single machine.
  • Open-source under GPL v2, maintained by the Xen Project community.
  • Developed originally at the University of Cambridge Computer Laboratory.

🔹 Uses of Xen:

  • Server Virtualization
  • Infrastructure as a Service (IaaS)
  • Desktop Virtualization
  • Security applications
  • Hardware appliances

🔹 Benefits of Xen:

  • Increased server utilization
  • Consolidated server infrastructure
  • Reduced costs
  • Flexibility with IA-32, x86-64, and ARM platforms

🔹 Xen Technologies:

  • Used in both desktop and server environments
  • Powers platforms like Xen Cloud Platform (XCP)
  • Supports paravirtualization and hardware-assisted virtualization
  • Delivers high performance for guest OSs using paravirtualization

🔶 Xen Virtualization (continued)

🔹 Performance Management:

  • Xen avoids performance loss by modifying guest OS instructions.
  • This is known as paravirtualization—not a fully transparent method (especially for x86 systems).
  • Offers high-performance execution, but guest OS needs to be aware it's virtualized.

Components of Xen Environment:

1.    Xen Hypervisor

o   Core of Xen virtualization; manages interaction between virtual machines and hardware.

o   Also known as the Virtual Machine Monitor (VMM).

o   Open-source and runs in the highest privilege mode.

2.    Dom0 (Domain Zero)

o   Special VM with privileged access; controls all other VMs (DomUs).

o   Hosts management tools and drivers.

o   Components include:

§  SUSE Linux Enterprise: GUI & CLI for management.

§  Xl toolstack (libxl): Manages domains.

§  QEMU: Emulates full systems for full or para-virtualized VMs.

3.    Xen-Based Virtual Machines (DomU / VM Guests)

o   Standard VMs managed by Dom0 and Xen.

o   Must include:

§  A bootable virtual disk (file, partition, or volume).

§  A configuration file.

§  Virtual network devices connected via Dom0.

4.    Management Tools, Commands, and Configuration Files

o   Used to manage and customize the virtualization environment.

o   Combination of CLI and GUI interfaces.


🧱 Xen Architecture:

  • Dom0: First domain started by the hypervisor. Handles hardware access and VM control.
  • DomU: Other virtual machines (VMs).
  • Xen treats all operating systems as domains.
  • Only Dom0 communicates with hardware directly.
  • Xen Hypervisor:
    • Sits at the lowest layer (under the OS).
    • Controls access to CPU, memory, I/O.
    • Manages isolation and execution of all domains.

🧠 Summary: Xen Architecture and Privilege Rings

🔹 Figure 2.15 Explanation – Architecture of Xen and Guest OS Management

The diagram shows the relationship between:

  • User Applications (Ring 3)
  • Guest OS (Domain U – Ring 1)
  • Dom0 Management Domain (Ring 1)
  • Xen Hypervisor (Ring 0)

This hierarchy is based on x86 privilege rings:

Ring

Privilege Level

Role

0

Highest

Xen Hypervisor

1

Mid

Guest OS (DomU), Dom0

2

Unused often

3

Lowest

User Applications


🔹 Key Concepts:

1.    Xen Hypervisor runs in Ring 0 (highest privilege):

o   Handles memory, CPU, and I/O management.

o   All sensitive hardware-level tasks are executed here.

2.    Dom0 (Management Domain):

o   First domain loaded.

o   Has special privileged access.

o   Manages VM lifecycle (create, configure, terminate).

o   Includes HTTP server and access to Xen hypervisor.

3.    Guest Domains (DomU):

o   Each runs in Ring 1, not Ring 0 (unlike traditional OS).

o   Can't access hardware directly.

o   Use hypercalls (special APIs) to request privileged services from Xen.

4.    User Applications (in DomU):

o   Run in Ring 3, just like in a normal OS.

o   Unmodified APIs (Application Binary Interface) are preserved.


🛡️ Privilege Rings (x86 Security Levels):

  • Ring 0: Kernel level (used by Xen Hypervisor).
  • Ring 3: Application level (used by user programs).
  • Xen avoids using Ring 0 for guest OSes to prevent kernel mode execution by untrusted code.

🧩 Hypercall: A mechanism like a system call, used by guest OS to interact with Xen Hypervisor safely.


✳️ Why This Matters for Virtualization:

  • Xen keeps the guest OS out of Ring 0, avoiding risks of direct hardware access.
  • It modifies some OS components (paravirtualization) to work effectively in this limited environment.
  • By using hypercalls, it ensures security while maintaining near-native performance.

🧠 Summary: Virtual Machines (VM)

🔹 What is a Virtual Machine (VM)?

  • A Virtual Machine is a software emulation of a physical machine that runs its own OS and applications, as if it were a completely independent computer.
  • It draws its resources (CPU, memory, storage) from the underlying physical host.

🔧 Think of it as a computer within a computer.


🔹 Key Points on Virtualization:

  • Virtualization allows running multiple isolated environments on a single physical machine.
  • Each VM runs its own OS on a virtualized environment.
  • The host machine provides resources to multiple guest VMs.
  • A hypervisor (or Virtual Machine Monitor, VMM) manages the VMs and ensures isolation and resource allocation.

🔹 Terms in VM:

Term

Meaning

Virtual Machine (VM)

A virtual version of a physical computer.

Virtualization

Creating virtual versions of systems/resources.

Host Machine

Physical computer hosting one or more VMs.

Emulation

Making one system behave like another.

Hypervisor

Software that manages and runs multiple VMs.

Guest OS

Operating system running inside a VM.


🔹 How Do Virtual Machines Work?

1.    VMs create virtual hardware on a physical machine.

2.    The host machine runs one or more VMs (also called guests).

3.    Each VM runs in its own isolated partition.

4.    The hypervisor manages resources and isolation between VMs.

5.    The hypervisor enables efficient sharing and flexible allocation of resources like:

o   CPU

o   Memory

o   Storage

o   Networking


🔹 Types of Virtual Machines:

1.    Process VM:

o   Also called application VM or managed runtime environment (MRE).

o   It runs a single application or process in a virtual environment.

o   Destroyed when the process exits.

o   Enables platform-independent execution of apps.

Example: Java Virtual Machine (JVM)

2.    (The second type — System VM — is likely on the next page.)


🔲 Fig. 2.16: Virtual Machine Architecture

A layered view of how VMs are organized:

mathematica

+-------------------+        +-------------------+

|   Application     |        |   Application     |

|   Guest OS-1      |        |   Guest OS-n      |

|      VM-1         |        |      VM-n         |

+-------------------+        +-------------------+

            \_____________________/

               Virtual Machine Monitor (Hypervisor)

                        |

                    Hardware

2. System VM (System Virtual Machine)

  • Simulates a complete operating system environment.
  • Allows multiple OS instances to run on a single physical machine.
  • The hypervisor manages the physical host’s resources across VMs.
  • This is typically what people refer to when they say “virtual machine.”

Benefits of Virtual Machines

1.    Scalability:

o   Cloud VMs scale with demand.

o   No need to invest in new physical servers.

2.    Portability:

o   VMs are packaged software units.

o   Easy to move across servers or cloud environments.

3.    Reduced Cost & Footprint:

o   Lower electricity, hardware, and maintenance costs.

4.    Faster Provisioning:

o   Duplicate VMs easily.

o   Spin up new environments quickly.

5.    Reliability:

o   One VM crash doesn’t affect others.

o   Isolated virtual environments.

6.    Better Security:

o   Multiple OSes can run safely on one host.

o   Isolated testing environments for vulnerabilities.


🌀 Section 2.4.1: Definition and Life Cycle of Virtual Machine (VM)

🔹 Definition of a VM

  • A VM is a software-based emulation of a physical machine.
  • Runs applications and OS like a real computer.
  • Created via virtualization to run multiple VMs on one server.

🧩 Characteristics of VMs:

Feature

Description

1. Isolation

Each VM runs independently with its own OS, CPU, RAM, and storage.

2. Scalability

VMs can be easily cloned, scaled, or removed based on demand.

3. Flexibility

Different OSes on the same hardware.

4. Cost-Efficiency

Share physical resources among multiple users to save costs.


🔄 Life Cycle of a Virtual Machine (in Cloud Computing)

1. Creation (Provisioning):

  • VM is created from a template or image (e.g., Linux, Windows).
  • Resources like CPU, RAM, storage are allocated.
  • Assigned IP address and network settings.

(More life cycle stages like starting, monitoring, pausing, and termination will likely follow on the next page.)

🔁 Life Cycle of a Virtual Machine (VM)

(Continued from Section 2.4.1)

2. Booting (Initialization)

  • The VM powers on and loads its operating system.
  • Configuration scripts may run to install apps and dependencies.

3. Running (Execution)

  • The VM becomes fully functional and runs applications.
  • It can be accessed remotely:
    • SSH for Linux
    • RDP for Windows
  • Users can manage and deploy workloads.

4. Monitoring and Scaling

  • Cloud providers continuously track VM performance.
  • Resources like CPU, RAM, and storage are adjusted dynamically:
    • Vertical scaling = adding more power to the same VM
    • Horizontal scaling = adding/removing VMs based on load
  • Autoscaling handles workload changes automatically.

5. Suspension (Pausing)

  • The VM can be paused to save resources.
  • The state is saved, and the VM can be resumed later.

6. Migration (Optional)

  • The VM may be moved to another server for:
    • Load balancing
    • Maintenance
    • Disaster recovery

7. Snapshot and Backup (Optional)

  • A snapshot or backup is created for restoring VM in case of failure or rollback.

8. Termination (Deletion)

  • The VM is shut down and resources are released.
  • Data may be deleted unless previously backed up.

🔄 Diagram: Fig. 2.17 – Life Cycle of VM

Includes stages:
Creation
Booting Running Monitoring Suspension Migration Snapshot Termination


🌐 2.4.2 VM Migration (Concept and Techniques)

🔹 Definition:

  • VM migration is the process of moving a VM from one physical server to another.
  • Happens without stopping the VM (usually).
  • Commonly used for:
    • Load balancing
    • Resource optimization
    • Cloud migration or maintenance

🔹 Key Points:

  • Helps optimize IT infrastructure in cloud environments.
  • Involves transferring applications or full VMs to cloud servers or other physical hosts.
  • Migration can be live (no downtime) or offline (requires a restart).

🔁 VM Migration (continued)

🔹 Definition Recap:

  • VM migration refers to moving a virtual machine from:
    • One physical server to another
    • Or from on-premises data centers to the cloud
  • It’s the relocation of a VM without (or with minimal) downtime.

Why is VM Migration Done?

1.    Load balancing – Distribute workload evenly to prevent server overload.

2.    Resource optimization – Move VMs to servers with better CPU, RAM, or disk resources.

3.    Power saving – Consolidate VMs on fewer servers and power off unused ones.

4.    Cloud migration – Move VMs to cloud infrastructure from local data centers.


🔄 Types of Migration:

1. Cold Migration

  • VM is shut down before migration.
  • Slower, causes downtime.
  • Suitable when uptime is not critical.

2. Live Migration

  • VM is moved while running, with minimal or no downtime.
  • Transfers:
    • CPU states
    • External device states
    • Memory & disk data
    • Network connections

💡 Concept of Live Migration:

🔁 Memory Data Migration

  • Transfer RAM (memory) state from source to destination VM.

💾 Storage Data Migration

  • Transfer disk data (persistent storage) from source to destination.

🔄 Live Migration Approaches:

1.    Pre-copy:

o   Memory is copied before VM is resumed on the target server.

o   Often used in traditional systems.

2.    Post-copy:

o   VM is resumed first, then memory and state data are copied.

o   Transfers minimal state at first.

3.    Hybrid:

o   Combines pre-copy and post-copy for optimized results.


📊 Diagram – Fig. 2.18:

Shows:

  • User using VM on source host
  • Memory Data Migration (pre-copy, post-copy, hybrid)
  • Storage Data Migration
  • Destination host receives and resumes VM with network continuity

🔄 Live Migration: Step-by-Step Process

Live migration allows moving a running VM between servers without downtime. Here's how OpenShift Virtualization achieves it:

Step 1: Preparation

  • The source node prepares the VM.
  • A scheduler selects the best destination node.
  • Both source and destination must access the same shared storage.

Step 2: Request

  • The source node sends a migration request to the destination.
  • The destination starts loading the VM and reserves resources.
  • A virtualization platform ensures both environments stay in sync.

Step 3: Transfer

  • The hypervisor copies the memory and VM state from source to destination.
  • A paused copy of the VM is created in both locations for failover protection.

Step 4: Finalize

  • Destination node verifies the VM is successfully transferred.
  • It becomes the primary VM; the source node can terminate the old one.

Step 5: Completion

  • Migration is done. VM runs from the destination node.
  • Operations continue without disruption.

🧊 Concept of Cold Migration

  • VM is shut down before migrating downtime occurs.
  • Configuration and memory are copied to the new host, then restarted.
  • Suitable for high-load VMs or when downtime is acceptable.

Benefits of VM Migration

1.    Improved Resource Utilization – Optimizes server loads.

2.    Increased Flexibility – Easily move VMs across platforms.

3.    Reduced Downtime – Live migration keeps services running.

4.    Simplified Management – Centralized VM control.


🛠 Tools and Technologies

1.    Hypervisors:

o   Examples: VMware vSphere, Microsoft Hyper-V

2.    SDN (Software-Defined Networking):

o   Allows dynamic, flexible networking to support live migration.

3.    Cloud Migration Services:

o   Tools from cloud providers to automate migration.

⚠️ Challenges in Cloud Migration

1.    Incompatible Infrastructure Between Clouds

o   Different OS/platforms make “lift-and-shift” difficult.

o   VMware Cloud offers hybrid solutions to eliminate compatibility issues.

2.    Lack of Support for Existing Security Policies

o   Enterprises often need stricter compliance than what public clouds offer.

o   VMware Cloud ensures compliance with mandates and regulations.

3.    Migrating Apps with Dependencies

o   42% of enterprises face issues due to interdependent infrastructure and apps.

o   VMware Cloud allows visualizing data flows to identify and migrate linked components.

4.    Cost of Refactoring/Rewriting Apps

o   Many apps require changes to work on the cloud.

o   VMware supports migration without major refactoring.

5.    Lack of Strategic Planning

o   Over 33% of enterprises lack a documented cloud strategy.

o   Planning helps avoid data flow disruption and network misconfiguration.

6.    Staff Efficiency

o   Cloud transformation has increased demand for skilled professionals.

o   VMware reduces risk by enabling teams to work in familiar environments.


🛠 VMware Cloud Migration Tools

VMware offers integrated solutions with major public cloud providers:

  • VMware Cloud on AWS: vSphere-based infrastructure on AWS.
  • Azure VMware Solution: Migrate/extend to Microsoft Azure.
  • Google Cloud VMware Engine: Extend VMware environments into GCP.
  • Oracle Cloud VMware Solution: High-performance Oracle Cloud migration.
  • IBM Cloud for VMware Solutions: IBM-powered VMware migration.
  • VMware Cloud Foundation: Centralized infrastructure & management.

🧮 2.4.3 – VM Consolidation (Concepts)

  • VM Consolidation = Reducing the number of active virtual machines.
  • It merges workloads onto fewer physical servers.
  • Benefits:
    • Improves resource utilization
    • Reduces energy usage
    • Lowers cloud costs

🔄 Comparison of Types of Virtualization

Type

Purpose

How it Works

Example Use

1. Storage Virtualization

Combines multiple physical storage devices into a single virtual storage unit

Logical storage pools are created for better management and scalability

SAN (Storage Area Network), cloud storage

2. Network Virtualization

Creates virtual networks that function independently of physical hardware

Uses virtual switches, routers, VLANs, SDN (Software-Defined Networking) to manage traffic

Isolating traffic for testing or multi-tenant use

3. Desktop Virtualization

Provides virtual desktops to users from a central server

VMs or remote sessions are accessed by users from thin clients or personal devices

VDI (Virtual Desktop Infrastructure) in offices

4. Application Server Virtualization

Allows applications to run on virtual servers, separate from hardware

Applications run in virtual environments on centralized servers

Running multiple apps on a single server securely

 

Quick Summary:

      Storage Virtualize disks/storage devices

      Network Virtualize network components

      Desktop Virtualize user desktops

      Application Server Virtualize servers for running apps

Types of Virtualization with Real-World Technology Examples

Virtualization Type

Technology Examples

1. Storage Virtualization

- VMware vSAN- IBM SAN Volume Controller- NetApp ONTAP- Dell EMC VPLEX

2. Network Virtualization

- VMware NSX- Cisco ACI (Application Centric Infrastructure)- OpenFlow- GNS3

3. Desktop Virtualization

- VMware Horizon- Citrix Virtual Apps and Desktops- Microsoft Remote Desktop Services (RDS)

4. Application Server Virtualization

- VMware vSphere- Microsoft Hyper-V- Oracle VM Server- Proxmox VE


🔁 Summary by Technology:

Type

Used For

Popular Tools

Storage

Centralized, flexible storage

VMware vSAN, NetApp, IBM SVC

Network

Virtual switches & routing

VMware NSX, Cisco ACI, Open vSwitch

Desktop

Remote desktops to users

Citrix, VMware Horizon, Microsoft RDS

App Server

Running multiple apps on VMs

vSphere, Hyper-V, Oracle VM

2.3.1 VMWare: Full Virtualization Reference Model

VMware Full Virtualization Reference Model

VMware uses full virtualization to allow multiple operating systems (guest OSes) to run on a single physical server, without modification to the OS.


🔷 Key Components of VMware Full Virtualization Model

┌───────────────────────────────┐

        User Applications         Inside each VM

 ├───────────────────────────────┤

      Guest Operating System      Runs like on real hardware

 ├───────────────────────────────┤

       Virtual Hardware (VM)      Virtual CPU, RAM, Disk, NIC

 ├───────────────────────────────┤

         VMware Hypervisor        Core software managing VMs

   (ESXi - Type 1 Hypervisor)  

 ├───────────────────────────────┤

       Physical Hardware          Real server: CPU, RAM, disk

 └───────────────────────────────┘


🔸 Detailed Layer Description:

Layer

Function

Physical Hardware

Real server infrastructure: CPU, memory, storage, network

VMware Hypervisor (ESXi)

Software layer that manages virtual machines, allocates resources, ensures isolation

Virtual Machine (VM)

A software container with its own virtual CPU, RAM, disk, etc.

Guest OS

Runs on the VM as if it were running on a real physical machine

Applications

Installed inside the guest OS, used by the end-user

🔄  How VMware Full Virtualization Works

      VMware ESXi creates a complete virtual environment.

      Each VM runs its own unmodified OS (like Windows, Linux).

      Guest OSes think they are using real hardware.

      The hypervisor translates hardware calls from the VM to the real hardware


Advantages of VMware Full Virtualization

1.    Isolation – Each VM is separate.

2.    No need to modify OS – Supports any standard OS.

3.    High security and performance

  1. Easy backup, restore, and cloning

Here's a clear differentiation of various types of virtualization: Storage, Network, Desktop, and Application Server Virtualization:

Type of Virtualization

Definition

Purpose

Examples

1. Storage Virtualization

Combines multiple physical storage devices into a single virtual storage unit.

Simplifies management, increases availability and performance.

SAN (Storage Area Network), NAS (Network Attached Storage), IBM SAN Volume Controller

2. Network Virtualization

Combines hardware and software network resources into a single software-based administrative entity.

Enables network optimization, scalability, and isolation.

VLANs (Virtual LANs), VPNs (Virtual Private Networks), SDN (Software Defined Networking)

3. Desktop Virtualization

Allows users to access their desktop environments remotely from any device.

Centralized control, enhances security, and supports BYOD (Bring Your Own Device).

VDI (Virtual Desktop Infrastructure), Citrix, VMware Horizon

4. Application Server Virtualization

Runs applications on virtual servers instead of dedicated hardware servers.

Reduces cost, improves efficiency, and allows quick deployment of applications.

VMware vSphere, Microsoft Hyper-V, Oracle VM


Summary:

  • Storage: Virtualizes storage devices for easier and efficient data management.
  • Network: Creates virtual networks for better traffic management and scalability.
  • Desktop: Hosts desktops on a server for remote access and centralized control.
  • Application Server: Runs applications on virtual machines instead of dedicated hardware.

Here are Technology Examples for each type of virtualization:

Type of Virtualization

Technology Examples

Vendors/Platforms

1. Storage Virtualization

- IBM SAN Volume Controller
- Dell EMC VPLEX
- NetApp ONTAP
- VMware vSAN

IBM, Dell EMC, NetApp, VMware

2. Network Virtualization

- VMware NSX
- Cisco ACI (Application Centric Infrastructure)
- Microsoft Hyper-V Network Virtualization
- Open vSwitch

VMware, Cisco, Microsoft, OpenStack

3. Desktop Virtualization

- VMware Horizon
- Citrix Virtual Apps and Desktops
- Microsoft Remote Desktop Services (RDS)
- Amazon WorkSpaces

VMware, Citrix, Microsoft, AWS

4. Application Server Virtualization

- VMware vSphere
- Microsoft Hyper-V
- Oracle VM Server
- Red Hat Virtualization

VMware, Microsoft, Oracle, Red Hat


Quick Overview:

  • Storage Combines disks Ex: VMware vSAN, IBM SVC
  • Network Virtual networks Ex: VMware NSX, Cisco ACI
  • Desktop Virtual desktops Ex: Citrix, VMware Horizon
  • App Server Virtual apps/OS Ex: vSphere, Hyper-V, Oracle VM

VMware: Full Virtualization Reference Model

Full Virtualization allows multiple operating systems to run unmodified on the same physical hardware. VMware uses a hypervisor to achieve this.


🔷 VMware Full Virtualization Architecture

+---------------------------+

|      Guest OS (xN)        | Multiple OS like Windows, Linux

+---------------------------+

|     Virtual Hardware      | Emulated CPU, memory, I/O

+---------------------------+

|        Hypervisor         | VMware ESXi / VMware Workstation

+---------------------------+

|     Physical Hardware     | CPU, RAM, Storage, Network

+---------------------------+


🔹 Key Components of VMware Full Virtualization:

Component

Description

Guest OS

The unmodified operating systems running on VMs.

Virtual Machine (VM)

Software container that mimics a real physical computer.

Hypervisor (VMware ESXi)

A software layer that manages VMs and allocates hardware.

Virtual Hardware

Simulated hardware devices like CPU, RAM, Disk, etc.

VMkernel

VMware's kernel for managing hardware and VM resources.


🔹 Features of VMware Full Virtualization

  • Runs unmodified OS (no kernel changes needed)
  • Hardware abstraction layer provided
  • Efficient resource isolation
  • Supports VM snapshots, cloning, and migration
  • Compatible with VMware vSphere, vCenter, etc.

🔹 VMware Products Supporting Full Virtualization

Product

Use Case

VMware ESXi

Enterprise-level hypervisor for servers

VMware Workstation

Desktop-level virtualization

VMware Fusion

Mac-based virtualization tool

VMware vSphere

Complete virtualization suite with management tools

 

Desktop Virtualisation

Desktop Virtualization ( DV ) Desktop Virtualization ( DV ) is a technique that creates an illusion of a desktop provided to the user. It d...