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 Reduction – One physical machine can run
multiple virtual systems → saves hardware cost.
2.
Better Resource Use – Hardware is used efficiently
across multiple VMs.
3.
Backup & Recovery – Easy 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 Utilization –
Aggregates multiple storage devices efficiently.
2.
Highly Scalable – Can grow storage with demand.
3.
Savings – Reduces hardware costs using
existing infrastructure.
4.
Very High Availability – Supports redundancy and failover.
5.
Improved Performance – Dynamically balances workloads.
6.
Data Migration Made Easier –
Simplifies moving data between systems.
7.
Easy Retrieval and Storage – Quick
access to data.
8.
Easy and Simple Data Migration – Fast and
smooth movement of data.
9.
Easy and Secure Storage – Secure 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
- 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 |
IBM, Dell EMC,
NetApp, VMware |
|
2.
Network Virtualization |
- VMware NSX |
VMware, Cisco,
Microsoft, OpenStack |
|
3.
Desktop Virtualization |
- VMware Horizon
|
VMware, Citrix,
Microsoft, AWS |
|
4.
Application Server Virtualization |
- VMware vSphere
|
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 |