0% found this document useful (0 votes)
0 views

Unit 2 Virtualization in Cloud Computing (2)

Virtualization is the process of creating virtual versions of physical computing resources, allowing multiple independent systems to operate on a single machine, enhancing resource utilization and flexibility. It employs a hypervisor to manage hardware resources for virtual machines (VMs), which can run different operating systems and applications. Various types of virtualization include server, storage, network, and desktop virtualization, each offering benefits such as improved scalability, cost efficiency, and resource optimization.

Uploaded by

cse9525ruchi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
0 views

Unit 2 Virtualization in Cloud Computing (2)

Virtualization is the process of creating virtual versions of physical computing resources, allowing multiple independent systems to operate on a single machine, enhancing resource utilization and flexibility. It employs a hypervisor to manage hardware resources for virtual machines (VMs), which can run different operating systems and applications. Various types of virtualization include server, storage, network, and desktop virtualization, each offering benefits such as improved scalability, cost efficiency, and resource optimization.

Uploaded by

cse9525ruchi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

What is Virtualization?

Virtualization is the process of creating virtual versions of physical computing resources, such
as servers, storage devices, and networks. This abstraction enables multiple independent
systems to operate on a single physical machine, improving resource utilization, scalability,
and flexibility.

How Virtualization Works

At its core, virtualization uses a software layer called a hypervisor to manage and allocate
hardware resources to virtual machines (VMs).

1. Physical Hardware:
o The foundation of virtualization is the physical hardware, including CPUs,
memory, storage, and network interfaces.
2. Hypervisor:
o The hypervisor acts as an intermediary between the physical hardware and the
virtual machines. It abstracts the hardware resources and allows multiple VMs
to share them.
3. Virtual Machines (VMs):
o A virtual machine is a software-defined instance that runs its own operating
system and applications, independent of other VMs.

Diagram 1: Basic Virtualization Architecture

sql
Copy code
+-----------------------+
| Application 1 | <-- Virtual Machine 1
| Operating System (OS) |
+-----------------------+
| Application 2 | <-- Virtual Machine 2
| Operating System (OS) |
+-----------------------+
| Application 3 | <-- Virtual Machine 3
| Operating System (OS) |
+-----------------------+
| Hypervisor | <-- Manages resource allocation
+-----------------------+
| Physical Hardware | <-- CPU, Memory, Storage, Network
+-----------------------+

Types of Virtualization

1. Server Virtualization:
o Divides a physical server into multiple VMs.
o Each VM can run a different operating system and applications.
o Use case: Efficient utilization of server hardware.
Diagram: Server Virtualization

+----------------------------------+
| CPU | Memory | Storage | Network |
+----------------------------------+
| | |
+-----------+ +-----------+ +-----------+
| VM 1 | | VM 2 | | VM 3 |
| OS & Apps | | OS & Apps | | OS & Apps |
+-----------+ +-----------+ +-----------+

2. Storage Virtualization:
o Combines multiple physical storage devices into a single logical unit.
o Use case: Simplified data management and efficient storage utilization.

Diagram: Storage Virtualization

+-------------------------------+
| Virtualized Storage | <-- Single logical view
+-------------------------------+
| Disk 1 | Disk 2 | Disk 3 | Disk 4 |
+-------------------------------+

3. Network Virtualization:
o Abstracts physical network components into virtual networks.
o Use case: Creates isolated and flexible network configurations.

Diagram: Network Virtualization

+---------------------+
| Virtual Network |
+---------------------+
| | |
+---+---+---+---+---+---+
| VM 1 | VM 2 | VM 3 |
+-------+-------+-------+

4. Desktop Virtualization:

• Hosts desktop environments on a central server, accessible via any device.


• Use case: Remote work and centralized management.

Diagram: Desktop Virtualization

diff
Copy code
+---------------------------+
| Virtual Desktop Instances |
+---------------------------+
|
+-------+-------+
| Laptop | Tablet | Smartphone |
+-------+-------+-------------+
Benefits of Virtualization

• Resource Optimization: Better utilization of physical hardware.


• Scalability: Easy to add or remove resources as needed.
• Cost Efficiency: Reduces hardware costs by consolidating resources.
• Isolation: Ensures VMs are isolated, improving security and reliability.

Diagram 2: Virtualization in Cloud Computing

+--------------------------------------------+
| Virtualization Layer (Hypervisors) |
| +---------+ +---------+ +---------+ |
| | VM 1 | | VM 2 | | VM 3 | |
| +---------+ +---------+ +---------+ |
+--------------------------------------------+
| Physical Infrastructure |
| +----------------------------------------+ |
| | Servers | Storage | Network | Databases| |
| +----------------------------------------+ |
+--------------------------------------------+

This diagram represents how virtualization serves as the backbone of cloud computing. CSPs
use hypervisors to manage resources efficiently, enabling them to offer IaaS, PaaS, and SaaS.

Role of Virtualization in Cloud Computing:

1. Resource Pooling: Virtualization enables providers to pool resources and share them
among multiple users efficiently.
2. Scalability: Supports dynamic allocation and scaling of resources based on demand.
3. Isolation: Ensures that VMs are isolated from each other, enhancing security and
reliability.
4. Cost Efficiency: Reduces the need for additional physical hardware and optimizes
utilization.
5. Flexibility: Facilitates the migration of workloads between servers or across data
centers.

Various Virtualization Techniques

Virtualization techniques are methods used to create virtual environments by abstracting


physical hardware. These techniques enable efficient utilization of resources, scalability, and
isolation. Below are the major virtualization techniques:

1. Hardware Virtualization

Hardware virtualization creates virtual machines (VMs) that operate independently on a single
physical machine. It uses a hypervisor to abstract and allocate hardware resources.

• Types of Hardware Virtualization:


1. Full Virtualization:
▪ Virtual machines fully emulate the hardware.
▪ Guest operating systems are unaware they're running in a virtualized
environment.
▪ Example: VMware, KVM.
2. Para-Virtualization:

The guest OS is aware of the virtualization and interacts directly with
the hypervisor for better performance.
▪ Example: Xen.
3. Hardware-Assisted Virtualization:
▪ Uses hardware features like Intel VT-x or AMD-V to enhance
virtualization.
▪ Improves performance and security.

Applications:

• Server consolidation
• Multi-operating system support

2. Software Virtualization

Software virtualization involves creating virtual environments for operating systems or


applications.

• Types:
1. Operating System Virtualization: Allows multiple isolated user-space
instances on a single OS kernel.
▪ Example: Docker, Kubernetes (Containerization).
2. Application Virtualization: Runs applications in virtual environments,
isolating them from the underlying system.
▪ Example: VMware ThinApp, Citrix XenApp.

Applications:

• Application testing and development


• Deployment across diverse environments

3. Storage Virtualization

Storage virtualization combines multiple physical storage devices into a single, unified virtual
storage pool.

• Types:
1. Block-Level Storage Virtualization: Abstracts storage at the block level,
making multiple storage devices appear as one.
▪ Example: Storage Area Network (SAN).
2. File-Level Storage Virtualization: Virtualizes storage at the file level,
allowing files to be managed independently of their physical storage location.
▪ Example: Network Attached Storage (NAS).

Applications:

• Data redundancy and backup


• Simplified storage management

4. Network Virtualization
Network virtualization abstracts physical network resources, creating multiple virtual networks
that operate independently.

• Types:
1. Internal Network Virtualization: Optimizes resources within a single physical
network.
2. External Network Virtualization: Combines multiple networks into one or
segments one network into multiple virtual networks.

Applications:

• Isolated network environments


• Improved network security and flexibility

5. Desktop Virtualization

Desktop virtualization separates the desktop environment from the physical device, allowing it
to be accessed remotely.

• Types:
1. Virtual Desktop Infrastructure (VDI): Hosts desktop environments on a
central server.
▪ Example: VMware Horizon, Citrix Virtual Apps and Desktops.
2. Remote Desktop Services (RDS): Provides shared access to a single desktop
instance.

Applications:

• Remote work
• BYOD (Bring Your Own Device) policies

6. Data Virtualization

Data virtualization abstracts data from underlying systems to provide a unified view of data
without duplication or movement.

Applications:

• Real-time data integration


• Simplified data access across platforms

7. GPU Virtualization

GPU virtualization allows multiple virtual machines to share a single GPU or provides
dedicated GPU access for each VM.

• Types:
1. Shared GPU Access: Multiple VMs share GPU resources.
2. Virtual GPU (vGPU): Provides each VM with virtualized GPU resources.
▪ Example: NVIDIA GRID.

Applications:

• AI/ML workloads
• High-performance gaming

8. Memory Virtualization

Memory virtualization combines physical memory from multiple systems into a single virtual
memory pool.

Applications:

• High-performance computing
• Memory-intensive applications

9. I/O Virtualization

I/O virtualization abstracts input/output devices, allowing multiple VMs to share physical I/O
resources.

Applications:

• Data-intensive workloads
• High-throughput applications

10. Cloud Virtualization

This technique combines various types of virtualization (hardware, network, storage, etc.) to
provide cloud services like IaaS, PaaS, and SaaS.

Applications:

• Cloud computing platforms (AWS, Azure, Google Cloud)

Comparison Table of Virtualization Techniques

Technique Purpose Examples Applications


Hardware Create VMs from
VMware, KVM Server consolidation
Virtualization physical hardware
Software Virtualize OS or Docker,
VMware App deployment and
Virtualization applications ThinApp testing
Storage Abstract physical Data management and
SAN, NAS
Virtualization storage redundancy
Network Abstract network
VMware NSX, Cisco Isolated and flexible
Virtualization resources ACI networks
Desktop Remote desktop
Citrix, VMware
Remote work
Virtualization environments Horizon
Data Real-time data
Unified data view Denodo, Tibco
Virtualization integration
GPU Share GPUs among NVIDIA GRID, AMD
AI/ML, gaming
Virtualization VMs MxGPU
Memory Pool memory from High-performance
OS-level solutions
Virtualization multiple systems computing
Technique Purpose Examples Applications
Share I/O devices SR-IOV, High-throughput
I/O Virtualization
among VMs ParaVirtualized I/O applications

Each virtualization technique plays a critical role in modern computing, particularly in cloud
environments, enabling efficient, scalable, and flexible use of resources.

Characteristics of Virtualization

Virtualization has several defining characteristics that make it a cornerstone of modern


computing, particularly in cloud environments. These characteristics enable better resource
utilization, scalability, and flexibility, driving efficiencies across IT infrastructure.

1. Abstraction of Physical Resources

• Virtualization separates physical hardware resources (CPU, memory, storage, network)


from their underlying layer and presents them as abstracted, virtual resources.
• This abstraction allows multiple virtual machines (VMs) or environments to share the
same physical hardware.

Example: Multiple VMs running different operating systems on a single physical server.

2. Isolation

• Each virtual environment is isolated from others, ensuring that the failure or
performance issues of one VM do not affect others on the same host.
• Isolation improves security, as VMs cannot directly access each other's data or
processes.

Example: A VM running a test environment does not interfere with a production VM.

3. Encapsulation

• Virtual machines and virtual environments are encapsulated into files that contain all
the necessary components, including the operating system, applications, and data.
• These encapsulated VMs can be moved, copied, or backed up easily.

Example: Migrating a VM from one server to another with minimal downtime.

4. Scalability

• Virtualization enables dynamic allocation and scaling of resources, allowing systems


to adapt to changing workloads.
• Resources can be scaled up (adding more CPU, memory, or storage) or down without
replacing physical hardware.

Example: Adding virtual CPUs to a VM during peak traffic hours.

5. Resource Sharing
• Virtualization allows multiple VMs to share the same physical hardware efficiently,
maximizing resource utilization.
• The hypervisor manages and allocates resources to ensure optimal performance.

Example: A server with 64 GB of RAM hosting multiple VMs with varying memory
requirements.

6. Hardware Independence

• Virtualization abstracts the hardware layer, making virtual machines independent of the
underlying physical hardware.
• VMs can run on different physical hardware without modification.

Example: Migrating a VM from an Intel-based server to an AMD-based server.

7. Fault Tolerance

• Virtualization platforms often include mechanisms for fault tolerance, such as live
migration, snapshots, and high availability.
• This minimizes downtime and ensures business continuity.

Example: Automatically moving a VM to a healthy server if the host server fails.

8. Portability

• Virtual machines are portable, meaning they can be moved between different physical
hosts or environments with minimal configuration changes.
• This portability enables disaster recovery and efficient load balancing.

Example: Transferring a VM from an on-premises data center to a cloud platform.

9. Security

• Virtualization enhances security by isolating environments and providing granular


control over access and permissions.
• Security tools can also be applied at the virtualization layer to monitor and control
traffic between VMs.

Example: A compromised VM in a multi-tenant environment does not affect other VMs.

10. Cost Efficiency

• By consolidating multiple workloads onto fewer physical machines, virtualization


reduces the need for additional hardware, saving on capital and operational expenses.
• It also reduces energy consumption and cooling costs.

Example: Running 10 VMs on a single server instead of deploying 10 physical servers.

11. Load Balancing

• Virtualization supports load balancing by distributing workloads across multiple VMs


or servers, optimizing resource utilization and improving performance.

Example: Distributing web traffic across multiple VMs in a cloud environment.


12. Snapshot and Backup

• Virtual machines can be easily snapshotted or backed up, preserving their state for
recovery or cloning purposes.
• Snapshots allow administrators to revert to a previous state in case of errors or failures.

Example: Creating a snapshot of a VM before performing a major software update.

13. Dynamic Resource Allocation

• Resources such as CPU, memory, and storage can be dynamically allocated to VMs
based on their workload requirements.
• This ensures that resources are used efficiently without manual intervention.

Example: Allocating additional memory to a VM experiencing high demand in real time.

14. Multi-Tenancy

• Virtualization supports multi-tenancy, where multiple users or organizations share the


same physical infrastructure while maintaining isolation between their environments.

Example: Public cloud providers like AWS hosting multiple customers on the same physical
server.

15. Enhanced Performance

• With modern virtualization technologies, the performance overhead is minimal, and


optimizations such as hardware-assisted virtualization improve speed and efficiency.

Example: Intel VT-x and AMD-V technologies enhance hypervisor performance.

Pros and Cons of Virtualization


Pros of Virtualization
• Utilization of Hardware Efficiently: With the help of Virtualization Hardware is
Efficiently used by user as well as Cloud Service Provider. In this the need of Physical
Hardware System for the User is decreases and this results in less costly.In Service
Provider point of View, they will utilize the Hardware using Hardware Virtualization
which decrease the Hardware requirement from Vendor side.
• High Availability: One of the main benefits of Virtualization is that it provides advance
features which allow virtual instances to be available all the times.
• Disaster Recovery is efficient and easy: With the help of virtualization Data Recovery,
Backup, Duplication becomes very easy. In traditional method, if somehow due to some
disaster if Server system Damaged then the surety of Data Recovery is very less. But
with the tools of Virtualization real time data backup recovery and mirroring become
easy task and provide surety of zero percent data losS.
• Virtualization saves Energy: Virtualization will help to save Energy because while
moving from physical Servers to Virtual Server's, the number of Server's decreases due
to this monthly power and cooling cost decreases which will Save Money as well.
• Quick and Easy Set up: In traditional methods Setting up physical system and servers
are very time-consuming. Firstly, Purchase them in bulk after that wait for shipment.
When Shipment is done then wait for Setting up and after that again spend time in
installing required software etc. Which will consume very time. But with the help of
virtualization the entire process is done in very less time which results in productive
setup.
• Cloud Migration becomes easy: Most of the companies those who already have spent
a lot in the server have a doubt of Shifting to Cloud, But it is more cost-effective to shift
to cloud services because all the data that is present in their servers can be easily
migrated into the cloud server and save something from maintenance charge, power
consumption, cooling cost, cost to Server Maintenance Engineer etc.
• Resource Optimization: Virtualization allows efficient utilization of physical
hardware by running multiple virtual machines (VMs) on a single physical server. This
consolidation leads to cost savings in terms of hardware, power, cooling, and space.
Cons of Virtualization
• High Initial Investment: While virtualization reduces costs in the long run, the initial
setup costs for storage and servers can be higher than a traditional setup..
• Complexity: Managing virtualized environments can be complex, especially as the
number of VMs increases,
• Security Risks: Virtualization introduces additional layers, which may pose security
risks if not properly configured and monitored.
• Learning New Infrastructure: As Organization shifted from Servers to Cloud. They
required skilled staff who can work with cloud easily. Either they hire new IT staff with
relevant skill or provide training on that skill which increase the cost of company.
• Data can be at Risk: Working on virtual instances on shared resources means that our
data is hosted on third party resource which put's our data in vulnerable condition. Any
hacker can attack on our data or try to perform unauthorized access, Without Security
solution our data is in threaten situation.

What is a Hypervisor?

A hypervisor, also known as a Virtual Machine Monitor (VMM), is a software layer or


firmware that enables virtualization. It allows multiple virtual machines (VMs) to run on a
single physical machine by abstracting and allocating the underlying hardware resources (CPU,
memory, storage, and network). Each VM operates independently as if it were running on its
own physical hardware, with its own operating system and applications.

Hypervisors play a crucial role in virtualization by isolating VMs from one another and
ensuring efficient resource sharing.

How a Hypervisor Works

1. Resource Allocation:
o The hypervisor sits between the physical hardware and virtual machines.
o It allocates physical resources (like CPU, RAM, storage) to VMs based on their
requirements.
2. Isolation:
o The hypervisor ensures that VMs are isolated from each other, so the failure or
compromise of one VM does not affect others.
3. Abstraction:
o It abstracts the physical hardware, enabling VMs to be independent of the
underlying infrastructure.
4. Management:
o The hypervisor provides administrative tools to manage VMs, such as creating,
modifying, starting, stopping, and migrating VMs.

Types of Hypervisors

Hypervisors are broadly classified into two types:

1. Type 1 Hypervisor (Bare-Metal)

• Runs directly on the physical hardware without requiring a host operating system.
• Offers better performance, lower latency, and greater efficiency because it eliminates
the need for an intermediary OS layer.

Examples:

• VMware ESXi
• Microsoft Hyper-V
• Xen
• KVM (Kernel-based Virtual Machine)

Advantages:

• High performance and efficiency.


• Direct hardware access.
• Improved security due to minimal software layers.

Use Cases:

• Data centers and enterprise environments.


• Cloud platforms like AWS, Azure, and Google Cloud.

+---------------------+
| Virtual Machine 1 |
+---------------------+
| Virtual Machine 2 |
+---------------------+
| Virtual Machine 3 |
+---------------------+
| Type 1 Hypervisor|
+---------------------+
| Physical Hardware |
+---------------------+

2. Type 2 Hypervisor (Hosted)

• Runs on top of a host operating system, which manages the physical hardware.
• Ideal for personal or development use but has higher overhead compared to Type 1.

Examples:

• VMware Workstation
• Oracle VirtualBox
• Parallels Desktop
Advantages:

• Easier to set up and use.


• Can be installed on standard operating systems.

Disadvantages:

• Slower performance due to reliance on the host OS.


• Higher resource consumption.

Use Cases:

• Personal or small-scale use, such as testing and development.

Diagram:

+---------------------+
| Virtual Machine 1 |
+---------------------+
| Virtual Machine 2 |
+---------------------+
| Virtual Machine 3 |
+---------------------+
| Type 2 Hypervisor|
+---------------------+
| Host OS |
+---------------------+
| Physical Hardware |
+---------------------+

Key Features of Hypervisors

1. Virtual Machine Creation: Provides tools to create and manage VMs.


2. Resource Allocation: Dynamically allocates CPU, memory, and storage to VMs.
3. Isolation: Ensures VMs operate independently and securely.
4. Portability: Supports migration of VMs across different physical hosts.
5. Fault Tolerance: Offers high availability and disaster recovery features.
6. Scalability: Allows the addition of new VMs without physical hardware expansion.

Benefits of Using a Hypervisor

1. Efficient Resource Utilization:


o Enables multiple workloads to run on a single physical machine, maximizing
hardware usage.
2. Cost Savings:
o Reduces the need for additional hardware, lowering capital and operational
expenses.
3. Scalability and Flexibility:
o Easily scale resources up or down based on workload demands.
4. Isolation and Security:
o Isolates VMs to prevent security risks and system failures.
5. Simplified Management:
o Offers tools to manage multiple virtual environments from a single interface.
Limitations of Hypervisors

1. Performance Overhead:
o Virtualization can introduce slight performance overhead, especially in Type 2
hypervisors.
2. Complexity:
o Managing and configuring hypervisors in large-scale environments can be
complex.
3. Single Point of Failure:
o In the case of Type 1 hypervisors, if the physical host fails, all VMs on it are
affected unless fault tolerance is implemented.

Comparison of Type 1 and Type 2 Hypervisors

Feature Type 1 Hypervisor Type 2 Hypervisor


Runs On Bare-metal hardware Host operating system
Performance High Moderate to low
Overhead Minimal High
Ease of Use Moderate Easy
Security High Moderate
Examples VMware ESXi, Hyper-V VMware Workstation, VirtualBox

Multitenancy in Cloud Computing


Multitenancy is a software architecture where a single cloud computing instance serves
multiple customers (tenants). Each tenant shares the same infrastructure while keeping their
data, configurations, and applications isolated.

Key Idea: Instead of creating separate servers for each customer, cloud providers run one
application that serves multiple users, reducing costs and improving scalability.

Characteristics of Multitenancy

• Resource Sharing – Multiple users share computing resources like databases, storage,
and servers.
• Data Isolation – Each tenant's data remains private and secure, even on shared
infrastructure.
• Cost Efficiency – Businesses save money by sharing cloud resources instead of
maintaining separate IT environments.
• Scalability – Cloud providers can easily scale services to accommodate multiple users.
• Customization – Each tenant can customize their experience without affecting others.

Example of Multitenancy

• Gmail & Google Drive: Multiple users (tenants) access Gmail and Google Drive, but
their emails and files are stored separately.
• Salesforce CRM: Different businesses use the same CRM platform with custom
configurations.
Application Programming Interfaces (API)

An Application Programming Interface (API) is a set of rules and protocols that allows
different software applications to communicate with each other. APIs act as messengers,
enabling applications to request and exchange data seamlessly.

Key Idea: APIs allow software components to interact and integrate, making cloud
computing services accessible to developers and businesses.

Types of APIs

• REST (Representational State Transfer) API – Used for web-based applications


(e.g., Twitter API, Google Maps API).
• SOAP (Simple Object Access Protocol) API – Used for enterprise applications
needing high security (e.g., banking APIs).
• GraphQL API – Allows clients to request specific data (e.g., Facebook API).
• WebSockets API – Used for real-time communication (e.g., live chat apps, gaming).

API Use Cases in Cloud Computing

• Cloud Storage APIs – Google Drive API, Dropbox API for file sharing.
• Social Media APIs – Facebook API, Twitter API for app integrations.
• Payment APIs – PayPal API, Stripe API for online transactions.
• Machine Learning APIs – Google Cloud AI API, IBM Watson API for AI-powered
applications.

You might also like