Cloud Computing Unit - 4
Cloud Computing Unit - 4
Unit -4th
Virtualization for Cloud
What is Virtualization?
Virtualization is the process of creating virtual instances of computing resources
like servers, storage, and networks. Virtualization is the "creation of a virtual
(rather than actual) version of something, such as a server, a desktop, a storage
device, an operating system or network resources". In other words,
Virtualization is a technique, which allows to share a single physical instance of
a resource or an application among multiple customers and organizations. It
does by assigning a logical name to a physical storage and providing a pointer to
that physical resource when demanded.
Types of Virtualization
1. Application Virtualization
2. Network Virtualization
3. Desktop Virtualization
4. Storage Virtualization
5. Server Virtualization
6. Data virtualization
Server Virtualization:This splits a physical server into multiple virtual servers,
each functioning independently. It helps improve performance, cut costs and
makes tasks like server migration and energy management easier.Divides a
single physical server into multiple virtual servers.
Example: VMware vSphere, Microsoft Hyper-V.
Network Virtualization: This allows multiple virtual networks to run on the same
physical network, each operating independently. You can quickly set up virtual
switches, routers, firewalls, and VPNs, making network management more
flexible and efficient. Creates virtual networks over physical infrastructure.
Example: VLANs (Virtual Local Area Networks), SDN (Software-Defined
Networking).
Desktop Virtualization: With desktop virtualization, your operating system is
stored on a server and can be accessed from anywhere on any device. It’s great
for users who need flexibility, as it simplifies software updates and provides
portability.Allows remote access to desktop environments.
Example: VDI (Virtual Desktop Infrastructure).
Application Virtualization: This lets you use an application on your local device
while it’s actually hosted on a remote server. Your personal data and the app’s
settings are stored on the server, but you can still run it locally via the internet.
It’s useful if you need to work with multiple versions of the same software.
Common examples include hosted or packaged apps. Runs applications in a
virtual environment instead of directly on an OS.
Example: Windows App-V, Citrix XenApp.
Data Virtualization: This brings data from different sources together in one
place without needing to know where or how it’s stored. It creates a unified view
of the data, which can be accessed remotely via cloud services. Companies like
Oracle and IBM offer solutions for this.
Time
Milestone
Period
IBM introduced the first virtualization concept with IBM CP-40 and CP-67. It
1960s
allowed multiple OS to run on a mainframe.
1970s -
Virtualization was mainly used in large enterprises and research labs.
1980s
1990s VMware introduced virtualization on x86 architecture (Intel-based systems).
2000s Virtualization became popular in businesses for server consolidation.
2010s– Virtualization is the backbone of Cloud Computing and is widely used in data
Now centers, desktop computing, and mobile platforms.
Key Benefits:
1. Resource Optimization:
o It allows multiple virtual servers to run on a single physical server.
o Better use of hardware resources like CPU, memory, and storage.
2. Cost Reduction:
o Reduces the need for physical hardware.
o Saves on power, cooling, and maintenance.
3. Scalability:
o Easy to create, clone, or remove virtual machines based on
demand.
4. Isolation:
o Each VM works independently; if one crashes, others are not
affected.
5. Flexibility & Portability:
o VMs can be moved from one server to another easily.
o Helps in backup, disaster recovery, and system migration.
6. Foundation of Cloud:
o Public, private, and hybrid clouds all use virtualization to provide
services like IaaS (Infrastructure as a Service).
Key Techniques:
CPU Virtualization: Divide CPU cores among virtual machines.
Memory Virtualization: Share and dynamically allocate RAM to VMs.
Storage Virtualization: Pool physical disks and allocate storage as needed.
Network Virtualization: Create virtual networks (VLANs) within the same
physical hardware.
Pros of Virtualization
1. Efficient Resource Utilization
Physical servers are often underutilized.
Virtualization allows multiple virtual machines (VMs) to run on a single physical
machine.
This maximizes the use of CPU, memory, and storage resources.
2. Cost-Effectiveness
Reduces the need for purchasing multiple physical servers.
Saves on hardware cost, electricity, cooling, and space.
Ideal for small businesses and startups.
3. Scalability
Easily add or remove virtual machines based on workload.
Helps manage dynamic resource demands efficiently.
4. Flexibility
VMs can run different operating systems (Windows, Linux) on the same host.
Easy to clone, snapshot, or move VMs to other machines or locations.
5. Isolation
Each VM runs independently.
If one VM fails or gets attacked, others remain safe.
Cons of Virtualization
1. Performance Overhead
VMs don’t perform exactly like real hardware.
Some CPU and memory is used by the hypervisor, reducing overall performance.
2. Complexity
Setting up and managing virtual environments requires skilled IT staff.
Backup, storage management, and networking need careful planning.
3. Security Risks
If not configured properly, one compromised VM can become a security threat.
Hypervisor attacks (e.g., escape attacks) can affect all VMs.
Allows full OS installation inside VM (e.g., Runs on host OS, does not need a
OS Support
Windows/Linux). separate OS.
High — as it needs resources to run full OS Low — only runs a single process,
Resource Usage
and apps. so less resource usage.
Full isolation from host and other VMs Limited isolation — only isolates
Isolation
(secure and separate). the process, not the OS.
Slightly slower due to full system Faster for single app execution,
Performance
emulation. lightweight.
Architecture:
markdown
CopyEdit
Hardware
↓
Hypervisor (Virtual Machine Monitor)
↓
Multiple System VMs
Each VM has:
- Virtual CPU
- Virtual Memory
- Virtual Storage
- Virtual Network Interface
- Guest OS
- Applications
Hypervisor Types:
Examples:
VMware ESXi
Oracle VirtualBox
Microsoft Hyper-V
KVM (Kernel-based Virtual Machine)
Xen
Use Cases:
Hardware
Indirect (through hypervisor) Direct
Access
How it Works:
Process VM Platform
Advantages:
Limitations:
Encapsulation
Isolation
Portability
Performance
Security Aspects
Techniques in Virtualization
Impact on Performance
Examples
JVM Java
KVM The Linux kernel becomes the supervisor through KVM modules.
VMware
Bare-metal hypervisor with built-in supervisor to manage VMs.
ESXi
Popular Virtualization Platforms –
🔹 1. VMware
🔹 2. Oracle VirtualBox
🔹 3. Microsoft Hyper-V
Type: Type 1 (Bare-metal for Windows Server) and Type 2 (Windows 10+)
Features:
o Integrated with Windows OS
o Good for Windows-based enterprise environments
Use Cases:
o Windows server virtualization
o Azure cloud support
🔹 Performance Comparison