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

Unit 2 Virtualization

The document provides an overview of virtualization and hypervisors, detailing how virtualization allows multiple operating systems and applications to run on a single machine, enhancing resource utilization and flexibility. It outlines key components, benefits, types of virtualization (including application, network, desktop, storage, and server virtualization), and cloud service models (IaaS, PaaS, SaaS). Additionally, it discusses characteristics of virtualization, hardware and software virtualization, and their respective types, emphasizing the importance of virtualization in modern cloud computing environments.

Uploaded by

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

Unit 2 Virtualization

The document provides an overview of virtualization and hypervisors, detailing how virtualization allows multiple operating systems and applications to run on a single machine, enhancing resource utilization and flexibility. It outlines key components, benefits, types of virtualization (including application, network, desktop, storage, and server virtualization), and cloud service models (IaaS, PaaS, SaaS). Additionally, it discusses characteristics of virtualization, hardware and software virtualization, and their respective types, emphasizing the importance of virtualization in modern cloud computing environments.

Uploaded by

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

Unit-2

Virtualization and Hypervisors


2.1 Introduction to Cloud virtualization
 Virtualization is used to create a virtual version of an underlying service With
the help of Virtualization, multiple operating systems and applications can run
on the same machine and its same hardware at the same time, increasing the
utilization and flexibility of hardware. It was initially developed during the
mainframe era.
 It is one of the main cost-effective, hardware-reducing, and energy-saving
techniques used by cloud providers.
 For example, users can run a Microsoft windows application on a Linux
machine without changing the machine configuration.
 Netflix uses a variety of cloud computing services and technologies, including
Amazon Web Services (Aws) and content delivery networks(CDNs). The
majority of Netflix’s cloud computing requirements, including storage,
processing power and data management are met by AWS.
2.1 Introduction to Cloud virtualization
Key Components:
 Server Hardware: This is the actual hardware, the physical computer.

 Hypervisor: It is a crucial component that manages and controls the


virtualized environments. Hypervisors sit between the hardware and the
operating system, allocating resources to virtual machines.

 Virtual Machines: These are the virtualized instances of operating systems


and applications. Each VM operates independently of the others, creating a
flexible and isolated environment.

 Virtualization Manager: This tool or services allows administrators to manage


and oversee the virtualized infrastructure, including tasks such as provisioning,
monitoring and resource allocation.
Benefits of Virtualization
 More flexible and efficient allocation of resources.

 Enhance development productivity.

 It lowers the cost of IT infrastructure.

 Remote access and rapid scalability.

 High availability and disaster recovery.

 Pay per use of the IT infrastructure on demand.

 Enables running multiple operating systems.


Types of Virtualization

1. Application Virtualization: Application virtualization helps a user to have remote access to an


application from a server. The server stores all personal information and other characteristics of the
application but can still run on a local workstation through the internet. An example of this would be a user
who needs to run two different versions of the same software. Technologies that use application
virtualization are hosted applications and packaged applications.
Types of Virtualization
2. Network Virtualization: The ability to run multiple virtual networks with each having a separate control
and data plan. It co-exists together on top of one physical network. It can be managed by individual parties
that are potentially confidential to each other. Network virtualization provides a facility to create and
provision virtual networks, logical switches, routers, firewalls, load balancers,
Virtual Private Networks (VPN), and workload security within days or even weeks.

3. Desktop Virtualization: Desktop virtualization allows the users’ OS to be remotely stored on a server in
the data center. It allows the user to access their desktop virtually, from any location by a different machine.
Users who want specific operating systems other than Windows Server will need to have a virtual desktop.
The main benefits of desktop virtualization are user mobility, portability, and easy management of software
installation, updates, and patches.

4. Storage Virtualization: Storage virtualization is an array of servers that are managed by a virtual
storage system. The servers aren’t aware of exactly where their data is stored and instead function more
like worker bees in a hive. It makes managing storage from multiple sources be managed and utilized as a
single repository. storage virtualization software maintains smooth operations, consistent performance, and
a continuous suite of advanced functions despite changes, breaks down, and differences in the underlying
equipment.
Types of Virtualization
5. Server Virtualization: This is a kind of virtualization in which the masking of server resources takes place. Here,
the central server (physical server) is divided into multiple different virtual servers by changing the identity number,
and processors. So, each system can operate its operating systems in an isolated manner. Where each sub-server
knows the identity of the central server. It causes an increase in performance and reduces the operating cost by the
deployment of main server resources into a sub-server resource. It’s beneficial in virtual migration, reducing energy
consumption, reducing infrastructural costs, etc.
Cloud Services Model
Infrastructure as a Service (IaaS):
Software virtualization is the backbone of IaaS, enabling providers like AWS, Azure, and Google Cloud
to offer scalable computing resources.

Platform as a Service (PaaS):


Virtualized environments host development tools, databases, and middleware for application
development and deployment.

Software as a Service (SaaS):


Enables multi-tenancy by running multiple instances of applications on a single server.
Characteristics of Virtualization
1. Increased Security – The ability to control the execution of a guest program in a completely transparent
manner opens new possibilities for delivering a secure, controlled execution environment. All the operations of
the guest programs are generally performed against the virtual machine, which then translates and applies them
to the host programs.
2. Managed Execution – In particular, sharing, aggregation, emulation, and isolation are the most relevant
features.
3. Sharing – Virtualization allows the creation of a separate computing environment within the same host. This
basic feature is used to reduce the number of active servers and limit power consumption.
4. Aggregation – It is possible to share physical resources among several guests, but virtualization also allows
aggregation, which is the opposite process. A group of separate hosts can be tied together and represented to
guests as a single virtual host. This functionality is implemented with cluster management software, which
harnesses the physical resources of a homogeneous group of machines and represents them as a single
resource.
5. Emulation – Guest programs are executed within an environment that is controlled by the virtualization layer,
which ultimately is a program. Also, a completely different environment with respect to the host can be
emulated, thus allowing the execution of guest programs requiring specific characteristics that are not present in
the physical host.
Characteristics of Virtualization
6. Isolation – Virtualization provides a level of isolation between different virtual instances. Each virtual machine
operates independently of others, ensuring that changes or issues in one virtual environment do not impact others.

7. Portability – The concept of portability applies in different ways according to the specific type of virtualization
considered. In the case of a hardware virtualization solution, the guest is packaged into a virtual image that, in most
cases, can be safely moved and executed on top of different virtual machines.

8. Resource sharing – Virtualization allows multiple virtual machines to share the resources of a single physical
machine, such as CPU, memory, storage, and network bandwidth. This improves hardware utilization and reduces
the need for additional physical servers.

9. Management – Virtualization provides centralized management tools that allow IT administrators to monitor and
manage multiple virtual machines from a single console, making it easier to troubleshoot and maintain the
virtualized environment.

10. Testing and Development – Virtualization allows organizations to easily create test and development
environments without the need for additional physical hardware. This enables developers to test new applications
and configurations in a controlled environment before deploying them to production.
Hardware Virtualization

 Hardware Virtualization, also known as server virtualization, is a process that allows for the creation of a
virtual version of a physical server, known as a virtual machine.
 This is a fundamental technology that makes cloud computing possible, as it allows multiple virtual machines
to run on a single physical machine, each with its own operating system and application.
 Create multiple virtual machines with different operating systems on a single physical host.
 Run multiple guest operating systems and their applications simultaneously on a single physical host without
rebooting.
 Consolidate and virtualize the computing environment, reduce hardware costs, lower operating expenses,
and increase productivity.
 Use open APIs and SDK for integration with in-house and third-party applications.
How Does Hardware Virtualization Work?
The hypervisor creates an abstraction layer between the software and the
hardware in use. After installing a hypervisor, virtual representations, such as
virtual processors, occur.
After installation, we cannot use physical processors—several popular
hypervisors such as VMware's vSphere, based on ESXi, and Microsoft's Hyper-
V.
In this system, multiple VMs can host simultaneously, but every VM is logically
isolated from each other. It is because of security reasons.
And Because of it, the other VMs will not get affected. If multiple VMs used, the
system's efficiency will increase simultaneously, and the overall performance will
improve.
So, this will lead to the fact that this improved heartbeat utilization provides
various benefits and supports the system while reducing the number of servers,
saving money.
Types of Hardware Virtualization
1. Full virtualization
It is underlying Hardware that is fully simulated. The Guest software does not require to perform any
modifications to run their applications. With full virtualization, the administrators can combine the
new and the existing system for something efficient. So, it should be compatible with the unique
design.

2. Hardware-Assisted Virtualization
In this type of Virtualization, the virtual machine simulates the Hardware, hence becoming
independent of it. In this Virtualization, the guest operating system does not need to perform any
modifications.

3. Para-virtualization
The Hardware is not simulated in Para-Virtualization. Here, the Guest software must run its own
isolated domains. The hypervisor provides various commands sent from the operating system to the
hypervisor and is called hypercars. These hypercars are further used for memory management.
Example of Hardware Virtualization
A software development company needs to test its new application on
different operating system. Instead of investing in multiple physical
servers, each running a different operating system, the company uses
hardware virtualization. They create multiple virtual machines on a
single server, each running a different operating virtualization. This
allows to test their application on multiple platforms, while saving on
hardware costs.
Software Virtualization
 Software virtualization in cloud computing refers to the abstraction of software
resources from the underlying hardware. This technique allows multiple operating
systems or applications to run on a single physical machine, providing efficient
resource utilization and isolation. By using software virtualization, cloud providers
can deliver scalable, flexible, and cost-effective services to customers.
How Does Software Virtualization Work?

 Before you know about the working of software virtualization in cloud computing, you should know that it
begins with the urge to use various applications in only one system by creating a virtual environment. And
creating a virtual environment to use more than one operating system is a complex process to administrate.
 And for sure, you have noticed many applications sometimes cannot be installed in different operating
systems because of the compatibility of the devices. So to overcome this issue, the concept of software
virtualization came into action.
 Because of software virtualization techniques, the developers are developing software that forms its own
virtual environment with its own OS compatibility and runs on it. And due to this, the software now can be
installed on different devices because there’s no need to install different operating systems as it forms its
own.
Types of Software Virtualization
1. Operating System Virtualization
Definition: Allows multiple operating systems to run on a single physical machine.
Operating System Virtualization is a technology that allows multiple isolated user spaces, called
containers, to run on a single host machine. Unlike traditional virtualization, which relies on
hypervisors to create virtual machines (VMs) with their own separate operating systems, OS
virtualization enables the use of a single OS kernel for all containers, making it more lightweight and
efficient.
Example Tools: VMware Workstation, Microsoft Hyper-V, Oracle VirtualBox.
Key Concepts of Operating System Virtualization

Containers:
Containers are isolated, lightweight environments created on top of a single operating system.
They allow multiple applications to run independently without interfering with each other, while
still sharing the same OS kernel.
Containers are different from virtual machines in that they don’t require a full OS for each
instance, making them more resource-efficient.
Kernel:
The kernel is the core part of the operating system that manages resources and hardware
interactions. In OS virtualization, all containers share the same kernel, unlike VMs, which use
separate kernels.
Image:
A container image is a lightweight, portable, and executable package that includes everything
needed to run an application, such as code, runtime, libraries, and dependencies.
Isolation:
OS virtualization provides isolation between containers, ensuring that each container is secure
and independent. However, since they share the same kernel, they are less isolated than VMs.
How OS Virtualization Works

In OS virtualization, the host machine runs a single operating system kernel, and each application
is encapsulated into a container that has its own user space, libraries, and dependencies. These
containers run independently of each other, but since they share the same kernel, they are lightweight
and resource-efficient compared to virtual machines.

Host OS:
The host OS provides the kernel, which handles system calls, process management, and other
fundamental functions.

Containers:
Each container contains its own filesystem, libraries, and dependencies, ensuring that
applications are isolated.
Containers do not need to include an OS of their own, making them much more efficient in terms
of system resources.

Container Engine:
A container engine (such as Docker) manages the creation, execution, and destruction of
containers. It allows for efficient deployment and scaling of applications in containers.
Types of Software Virtualization
2. Application Virtualization
Definition: Virtualizes applications, allowing them to run on different operating systems without
compatibility issues.
How It Works: The application is decoupled from the underlying OS and executed in a virtualized
container.
Uses:
Running Windows applications on macOS.
Isolating applications for testing.
Example Tools: Microsoft App-V, Citrix XenApp, Turbo.
Key Features of Application Virtualization

Isolation of Applications:
Applications run in a virtual environment, isolated from the host OS and other applications.
Prevents conflicts between applications and the OS.

Centralized Management:
Applications are hosted on a central server and can be delivered to multiple endpoints.

Portability:
Virtualized applications can be run on different devices or operating systems.

No Installation Required:
Applications are executed from the virtual environment, eliminating the need for installation on the
host system.
How Application Virtualization Works
Packaging the Application:
The application is encapsulated into a virtual package containing its binaries, dependencies, and
configuration files.

Streaming or Deployment:
The virtualized application is streamed to the endpoint or executed from a remote server.

Execution in Virtual Environment:


The application runs in a virtualized container that abstracts it from the underlying OS and other
applications.
Benefits of Application Virtualization
Compatibility:
Applications can run on different versions of operating systems without compatibility issues.

Reduced Conflicts:
Isolated execution prevents conflicts between multiple applications or between applications and the
OS.

Simplified Management:
Centralized deployment and updates reduce the administrative overhead of managing applications.

Cost Efficiency:
Enables efficient resource usage by running multiple applications on the same device.

Enhanced Security:
Applications are isolated, minimizing the risk of malware or unauthorized access.

Faster Deployment:
Applications can be quickly deployed to multiple users or devices.
Types of Software Virtualization
3. Service Virtualization
Service Virtualization is a technique used to simulate and mimic the behavior of software components
(such as APIs, databases, and microservices) that are unavailable, incomplete, or difficult to access in a
testing or development environment. It enables developers and testers to work in isolated yet realistic
environments, accelerating application delivery and improving efficiency.

Before virtualization:
After virtualization:
How Service Virtualization Works

Recording and Capturing Behavior:


Captures real interactions between a client and a dependent service.

Simulation and Configuration:


The captured data is used to create a virtual service that mimics the original service's behavior.

Integration into Workflow:


The virtual service is used by developers, testers, or automated tools instead of the real service.
Key Features of Service Virtualization
Simulation of Dependencies:
Simulates APIs, databases, or third-party services.
Reduces dependency on external systems that may be unavailable or costly.

Realistic Testing Environment:


Creates a virtual replica of actual services, mimicking behavior, latency, and response times.

Isolation from Constraints:


Allows teams to work independently without waiting for other services to be completed or available.

Flexible Configuration:
Supports customization to test various scenarios, including error handling, edge cases, and
performance.
Benefits of Service Virtualization
Accelerates Development and Testing:
Teams can test applications without waiting for the availability of dependent services.

Cost-Effective:
Reduces the need to access expensive third-party systems or resources for testing.

Improved Quality:
Enables testing under realistic conditions, helping to identify and fix issues early.

Scalability:
Allows testing of large-scale scenarios, including high traffic and load conditions.

Risk Reduction:
Helps simulate and test failure scenarios without impacting real systems.
Full Virtualization
Full Virtualization was introduced by IBM in 1966. It is the first software solution for server virtualization
and uses binary translation and direct approach techniques. In full virtualization, the virtual machine
completely isolates the guest OS from the virtualization layer and hardware. Microsoft and Parallels
systems are examples of full virtualization.
Para Virtualization
Para virtualization is the category of CPU virtualization which uses hypercalls for operations to handle
instructions at compile time. In para virtualization, guest OS is not completely isolated but it is partially
isolated by the virtual machine from the virtualization layer and hardware. VMware and Xen are some
examples of para virtualization.
Difference Between Full Virtualization and Para virtualization
S.No. Full Virtualization Paravirtualization

In paravirtualization, a virtual machine does not implement full isolation of


In Full virtualization, virtual machines permit the execution of the
1. instructions with the running of unmodified OS in an entirely isolated way.
OS but rather provides a different API which is utilized when OS is
subjected to alteration.

2. Full Virtualization is less secure. While the Paravirtualization is more secure than the Full Virtualization.

Full Virtualization uses binary translation and a direct approach as a


3. technique for operations.
While Paravirtualization uses hypercalls at compile time for operations.

4. Full Virtualization is slow than para virtualization in operation. Paravirtualization is faster in operation as compared to full virtualization.

5. Full Virtualization is more portable and compatible. Paravirtualization is less portable and compatible.

6. Examples of full virtualization are Microsoft and Parallels systems. Examples of paravirtualization are Microsoft Hyper-V, Citrix Xen, etc.

The guest operating system has to be modified and only a few operating
7. It supports all guest operating systems without modification.
systems support it.

Using the drivers, the guest operating system will directly communicate
8. The guest operating system will issue hardware calls.
with the hypervisor.

9. It is less streamlined compared to para-virtualization. It is more streamlined.

10. It provides the best isolation. It provides less isolation compared to full virtualization.
Partial Virtualization

Partial virtualization, or software-based virtualization, involves virtualizing specific


components of the hardware
while leaving others to be managed by the host operating system.
It doesn't completely simulate the underlying hardware.

Example of Partial Virtualization


VirtualBox is an example of partial virtualization.
It allows users to create VMs on their host system, but it relies on the host OS to
manage certain hardware aspects.
VirtualBox is suitable for running guest operating systems with minimal performance
impact.
Operating System Level Virtualization
•Operating system-based Virtualization refers to an operating system feature in which the kernel
enables the existence of various isolated user-space instances. The installation of virtualization
software also refers to Operating system-based virtualization. It is installed over a pre-existing
operating system and that operating system is called the host operating system.

•In this virtualization, a user installs the virtualization software in the operating system of his system
like any other program and utilizes this application to operate and generate various virtual
machines. Here, the virtualization software allows direct access to any of the created virtual
machines to the user. As the host OS can provide hardware devices with the mandatory support,
operating system virtualization may affect compatibility issues of hardware even when the
hardware driver is not allocated to the virtualization software.

•Virtualization software is able to convert hardware IT resources that require unique software for
operation into virtualized IT resources. As the host OS is a complete operating system in itself,
many OS-based services are available as organizational management and administration tools can
be utilized for the virtualization host management.
Operating System Level Virtualization

Some major operating system-based services are mentioned below:


1. Backup and Recovery.
2. Security Management.
3. Integration to Directory Services.
Operating System Level Virtualization
Various major operations of Operating System Based Virtualization are described below:
1. Hardware capabilities can be employed, such as the network connection and CPU.
2. Connected peripherals with which it can interact, such as a webcam, printer, keyboard, or
Scanners.
3. Data that can be read or written, such as files, folders, and network shares.

features of operating system-based virtualization are:


Resource isolation: Operating system-based virtualization provides a high level of resource
isolation, which allows each container to have its own set of resources, including CPU, memory, and
I/O bandwidth.
Lightweight: Containers are lightweight compared to traditional virtual machines as they share the
same host operating system, resulting in faster startup and lower resource usage.
Portability: Containers are highly portable, making it easy to move them from one environment to
another without needing to modify the underlying application.
Scalability: Containers can be easily scaled up or down based on the application requirements,
allowing applications to be highly responsive to changes in demand.
Security: Containers provide a high level of security by isolating the containerized application from
the host operating system and other containers running on the same system.
Operating System Level Virtualization
Various major operations of Operating System Based Virtualization are described below:
1. Hardware capabilities can be employed, such as the network connection and CPU.
2. Connected peripherals with which it can interact, such as a webcam, printer, keyboard, or
Scanners.
3. Data that can be read or written, such as files, folders, and network shares.

features of operating system-based virtualization are:


Resource isolation: Operating system-based virtualization provides a high level of resource
isolation, which allows each container to have its own set of resources, including CPU, memory, and
I/O bandwidth.
Lightweight: Containers are lightweight compared to traditional virtual machines as they share the
same host operating system, resulting in faster startup and lower resource usage.
Portability: Containers are highly portable, making it easy to move them from one environment to
another without needing to modify the underlying application.
Scalability: Containers can be easily scaled up or down based on the application requirements,
allowing applications to be highly responsive to changes in demand.
Security: Containers provide a high level of security by isolating the containerized application from
the host operating system and other containers running on the same system.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy