What is Virtualization?
Explain Server Virtualization in detail (16m)
Virtualization
• A computer architecture technology that multiplexes multiple virtual machines (VMs) in the same
hardware machine.
• Aims to enhance resource sharing and improve computer performance.
• Separates hardware from software for better system efficiency.
• Traditional computers run with a host operating system tailored for their hardware architecture.
• Post-virtualization, user applications managed by their own OS can run on the same hardware,
independent of the host OS.
• This is often achieved by adding a virtualization layer.
Virtualization can be implemented at various operational levels, as given below
• Instruction set architecture (ISA) level
• Hardware level
• Operating system level
• Library support level
• Application level
Application Level
• Includes JVM,.NET CLR, Panot.
• Provides platforms for running applications independently of hardware.
User-Level API Level Layer
• Includes WINE, WABI, LxRun, Visual MainWin, vCUDA.
• Translates API calls for cross-operating system applications.
Operating System/Virtual Environment Level
• Includes Jail, VPS, Ensim’s VPS, FVM.
• Provides secure, independent application running.
Hardware Abstraction Layer
• Includes VMware, Virtual PC, Denali, Xen, L4, Plex86, User Mode Linux, Cooperative Linux.
• Creates multiple virtual machines on a single physical machine.
ISA Level Layer
• Comprises emulators and binary translators.
• Emulates different architectures.
• Enables software on various hardware platforms.
Types of Virtualization:
1. Server Virtualization
2. Storage Virtualization
3. Network Virtualization
4. Desktop Virtualization
5. Application Virtualization
Server Virtualization
Server Virtualization is the process of dividing a physical server into multiple unique and isolated
virtual servers. Each virtual server can run its own operating system and applications independently.
This technology has become increasingly popular due to its numerous benefits, including improved
resource utilization, cost savings, and easier management.
How Server Virtualization Works
1. Hypervisor: A specialized software called a hypervisor is used to create and manage virtual
machines. The hypervisor sits between the hardware and the virtual machines, allocating
resources such as CPU, memory, and storage to each VM.
2. Virtual Machines (VMs): Each VM operates as a separate entity with its own operating
system and applications. The hypervisor ensures that VMs are isolated from each other,
providing security and stability.
3. Resource Allocation: The hypervisor dynamically allocates resources to VMs based on their
needs, optimizing the use of physical hardware.
4. Isolation: VMs are isolated from each other, meaning that issues in one VM do not affect
others. This isolation also enhances security.
Types of Server Virtualization
1. Full Virtualization: The hypervisor provides a complete simulation of the underlying
hardware, allowing unmodified guest operating systems to run.
2. Para-Virtualization: The guest operating systems are aware of the virtualization and interact
with the hypervisor for better performance.
3. OS-Level Virtualization: Multiple isolated user-space instances (containers) run on a single
kernel, sharing the same operating system.
Benefits of Server Virtualization
1. Cost Savings: Reduces the need for physical servers, lowering hardware and maintenance
costs.
2. Improved Resource Utilization: Maximizes the use of available resources by running multiple
VMs on a single physical server.
3. Scalability: Easily scales up or down by adding or removing VMs as needed.
4. Flexibility: Allows for quick deployment and reconfiguration of VMs.
5. Disaster Recovery: Simplifies backup and recovery processes by encapsulating VMs into files
that can be easily backed up and restored.
Applications of Server Virtualization
1. Data Centers: Enhances the efficiency and flexibility of data center operations.
2. Development and Testing: Provides isolated environments for software development and
testing without the need for additional hardware.
3. Cloud Computing: Forms the backbone of cloud services, enabling providers to offer scalable
and flexible resources to users.
4. Server Consolidation: Reduces the number of physical servers required by consolidating
workloads onto fewer machines.