Module 3
Module 3
Module – 3
Virtualization
# What is Virtualization?
Virtualization refers to the representation of physical computing resources in simulated form having
made through the software. This special layer of software (installed over active physical machines) is referred
as layer of virtualization. This layer transforms the physical computing resources into virtual form which users
use to satisfy their computing needs.
In simple sense, the virtualization is the logical separation of physical resources from direct access of users to
fulfill their service needs. Virtualization provides a level of logical abstraction that liberates user-installed
software (starting from operating system and other systems as well as application software) from being tied to
a specific set of hardware. Rather, the users install everything over the logical operating environment (rather
than physical ones) having created through virtualization.
Apart from basic computing devices like processor, primary memory, other resources like storage,
network devices (like switch, router etc.), the communication links and peripheral devices (like keyboard,
mouse, printer etc.) can also be virtualized. But, it should be noted that in case of core computing resources
a virtualized component can only be operational when a physical resource empowers it from the back end.
For example, a virtual processor can only work when there is a physical processor linked with it.
Figure 7.2 represents a virtualized computing environment comprising of processor, memory and
storage disk.
The layers of virtualization transform these physical computing devices into virtual form and presents
them before user. The important thing here to be noted is that the simulated devices produced through
virtualization may or may not resemble the actual physical components (in quality, architecture or in
quantity).
For instance, in the given figure below, users get access to three processors while there is one physical
processor in reality. Or, 32-bit processor can be produced (in virtual form) from 64-bit actual physical
processor.
1
BSc
The machine on which the virtual machine is going to create is known as Host Machine and that virtual
machine is referred as a Guest Machine
The virtual machines are created over the virtualization layers. This virtualization layer is actually a set of
control programs that creates the environment for the virtual machines to run on. This layer provides the
access to the system resources to the virtual machines. It also controls and monitors the execution of the
virtual machines over it. This software layer is referred as the Hypervisor or Virtual Machine Monitor
(VMM).
2
BSc
Hypervisor
It is the OS that runs on actual hardware and the Virtual counterpart is a part of this OS as a running process.
Hypervisors are often seen as Domain 0 or Dom0.
Container
These are light-weight VMs that are part of the same OS instance as its hypervisor. So, containers are nothing
but a group of processes that are running with their respective namespace for process identifiers.
Virtualization Software
It is a software that aids in implementing virtualization on any computer. It can either be a part of a software
application package or an OS or a special variant of that OS.
Virtual Network
Virtual Network is a logically separate network within servers that can be extended to other servers or across
multiple servers.
#Types of Virtualization
1. Desktop Virtualization
In this type of virtualization, you can run multiple operating systems, each in its own virtual machine on the
same system.
3
BSc
1. Virtual desktop infrastructure runs numerous virtual machines on a central server and then hosts it to the host system
according to the user's requirements. In this way, you can access any operating system from any device without
installing the actual operating system in their local machine.
2. Local desktop virtualization is the type that runs the hypervisor on the local system, which allows the user to install
multiple operating systems simultaneously without affecting the host's operating system.
2. Network Virtualization
In this, the software creates a virtual instance of the network that can be used to manage from a single console.
It forms the abstraction of the hardware components and functions (e.g., switches, routers, etc.), simplifying
network management.
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.
4
BSc
1. Software-defined networking (SDN) virtualizes hardware that controls network traffic routing.
2. Network function virtualization (NFV) virtualizes hardware appliances that provide network-specific
functions easier to configure and manage, e.g., firewall, etc.
3. Storage Virtualization
This virtualization enables all the storage devices on the system to be accessed and be managed as a single
storage unit pool for better maintenance.
The storage virtualization collects all the storage into a single pool from which they can allocate to
any of the VM on the network as required.
Storage virtualization is the process of grouping the physical storage from multiplenetwork storage
devices so that it looks like a single storage device.
This step makes it easier for the hypervisor to assign storage for VMs with max efficiency and without
wasting any hardware resources from our system.
4. Application Virtualization
Application virtualization helps a user to have remote access to an application from a server.
And no need to install the application in the VM.
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 thesame
software.
Technologies that use application virtualization are hosted applications and packaged
applications.
5
BSc
Types of virtualization:
1. Local application virtualization runs on the host device but runs in a virtual environment, not in the
hardware.
2. Application virtualization, the application is on the server-side, and it sends some components to the host
device according to the requirement.
3. Server-based application virtualization runs only on the server-side and sends the only interface to the
client system.
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 thedeployment
of main server resources into a sub-server resource.
It’s beneficial in virtual migration, reducing energy consumption, reducing
infrastructural costs, etc.
Benefits of Virtualization
1. Resource Efficiency: As the name suggests, before virtualization, each application server used its
hardware resources, which were being under-used. Still, having multiple virtual machines can achieve the
maximum efficiency of the hardware resources.
2. Minimum Downtime: This refers to the crashes of the operating system and application which can cause
a halt in user productivity. By using virtualization, the admin can run multiple similar virtual machines
simultaneously alongside and change over to the working instances in case of a crash, instead of having
numerous dedicated servers.
3. Time Management: Buying, installing, and configuring a new system is costly and a waste of time.
6
BSc
# Advantages of Virtualization
# Downsides of Virtualization
Single Point of Failure Problem: The major benefit of virtualization is resource sharing.
Multiple virtual machines can run over one physical machine. But, this has a downside.
It increases the probability of failure of a number of virtual servers in cases of failure of
single physical machine. Although this situation can be handled easily by keeping backup
resources and porting those virtual servers on the backup set of physical resources. Porting
is not a difficult task as virtualization decouples virtual systems from physical resources.
Lower Performance Issue: There is a concern whether virtual environments have the
capacity to accomplish the full performance of the actual physical system. It has been seen
that virtual servers can achieve up to 85 percent to 90 percent of the performance of the
actual physical server as VMs cannot get direct access to the hardware.
Difficulty in Root Cause Analysis: With virtualization, a new layer of complexity is
added which can cause new problems. The main difficulty is that if something does not
work as it is supposed to it may require considerable extra efforts to find the cause of the
problem.
7
BSc
Software Visualization in Cloud Computing allows the single computer server to run one or
more virtual environments.
It is quite similar to virtualizations but here it abstracts the software installation
procedure and creates a virtual software out of it.
In software virtualizations, an application will be installed which will perform the further
task.
One software is physical while others are virtual as it allows 2 or more operating system
using only one computer.
Advantages of Software Virtualization
1) Client Deployments Become Easier:
Copying a file to a workstation or linking a file in a network then we can easily install virtual software.
2) Easy to manage:
To manage updates becomes a simpler task. You need to update at one place and deploythe updated
virtual application to the all clients.
3) Software Migration:
Without software virtualization, moving from one software platform to another platform takes much
time for deploying and impact on end user systems. With the help of virtualized software environment
the migration becomes easier.
Virtual Clustering
In cloud computing, a virtual cluster is a group of virtual machines (VMs) that are
deployed as a single logical unit.
They share the same virtualization software and hardware, and they appear as a
single unit to the end-user.
Virtual clusters provide the ability to scale operations easily. You can add or remove
VMs to meet changing demands, and you can move VMs to optimize the use of
hardware.
Virtual clustering solution reduces data center costs, increase efficiency, and
increase scalability.
Two types of virtual clusters : Physical and Virtual Cluster
8
BSc
A physical cluster is a group of server units (servers or computer systems) that are deployed
physically together in one location or multiple locations, connected with a physical network.
A virtual cluster is a group of virtual machines (VMs) deployed as a single logical unit in a
single data center or in multiple data centers connected with a virtual network.
Application Virtualization
Application virtualization software allows users to access and use an application from aseparate
computer than the one on which the application is installed.
Using application virtualization software, IT admins can set up remote applications on aserver and
deliver the apps to an end user’s computer.
For the user, the experience of the virtualized app is the same as using the installed app on a
physical machine.
Pitfalls of Virtualization.
1. Mismatching Servers
This aspect is commonly overlooked especially by smaller companies that don't invest
sufficient funds in their IT infrastructure and prefer to build it from several bits and
pieces.
This usually leads to the simultaneous virtualization of servers that come with
different chip technology (AMD and Intel).
Frequently, migration of virtual machines between them won't be possible and
server restarts will be the only solution.
9
BSc
This is a major problem and actually means losing the benefits of live
migration and virtualization.
3. Misplacing Applications