20MCA168 VIRTUALISATION
AND CONTAINERS
MCA Second Semester Elective1
Part-1 Module-1
VIRTUALISATION AND CONTAINERS
• Module 1 (10 Hours):
• Physical and virtual machines, Traditional and
virtual computing
• Understanding virtualization, Need and
Applications of virtualization,
• Limitations, Simulations and Emulations,
Challenges in Virtualized environment,
• Tools and technologies in virtualized
environments.
• Types of Hypervisors, Hypervisor architecture
• Virtualization is the ability to run multiple
operating systems on a single physical system
and share the underlying hardware resources.
• It is the process by which one computer hosts
the appearance of many computers.
• Virtualization is used to improve IT throughput
and costs by using physical resources as a pool
from which virtual resources can be allocated.
• Virtualization software makes it possible to run
multiple operating systems and multiple
applications on the same server at the same time
• The technology behind Virtualization is known as
a Virtual Machine Monitor (VMM) or Virtual
Manager, which separates computing
environments from the actual physical
infrastructure
• In computing, Virtualization is a broad term that
refers to the abstraction of computer resources
• Virtualization hides the physical characteristics
of computing resources from their users, their
applications or end users.
• This includes making a single physical resource
(such as a server, an operating system, an
application or a storage device) appear to
function as multiple virtual resources.
• It can also include making multiple physical
resources (such as storage devices or servers)
appear as a single virtual resource...”
• Virtualization is often:
• The creation of many virtual resources from
one physical resource.
Virtualization (as a whole)
Virtualization allows users to run multiple
operating systems simultaneously on a
single
machine.
In other words virtualization refers to the
creation
of a virtual resource such as a server,
desktop,
operating system, file, storage or network.
The main goal of virtualization is to manage
workloads by transforming traditional
computing
to make it more scalable.
It allows using a physical machine’s full
capacity
Application Areas of Virtualization
Server Consolidation:
Virtual machines are used to consolidate many physical
servers into fewer servers.
Each physical server is reflected as a virtual machine
“guest”. They reside on a virtual machine host
system.
This is also known as “Physical-to-Virtual” or ‘P2V’
transformation.
Disaster Recovery:
Virtual machines can be used as “hot standby”
environments
for physical production servers.
Virtual storage can be replicated and transferred to
another location.
Virtualization is very useful in planning for disaster
recovery.
Portable Applications:
Portable applications are needed when running an application
from a removable drive, without installing it on the system’s
main disk drive.
Virtualization can be used to store temporary files, windows
registry entries and other information in the application’s
installation directory and not within the system’s permanent
file system.
Portable Workspaces:
Recent technologies have used virtualization to create portable
workspaces on devices like iPods and USB memory sticks
The Use of Computers
Applications
Operating
System
Hardware
Virtualization
Applications
Operating
System
Hypervisor
Hardware
Virtualization -- a Server for Multiple Applications/OS
Application
Application
Applications
Application
Application
Applications
Operating
Operating
Operating
Operating
Operating System
System
System System
Operating System
System
Hypervisor
Hardware
Hardware
Hypervisor is a software program that manages multiple operating systems (or multiple
instances of the same operating system) on a single computer system.
The hypervisor manages the system's processor, memory, and other resources to allocate
what each operating system requires.
Hypervisors are designed for a particular processor architecture and may also be called
virtualization managers.
Physical and Virtual Machine
Nature of Previous computing system
or are now running in
virtualization:
components that run in real environment
virtual environment.
Real computing model Virtual Computing model
APP APP APP APP APP APP
Operating System Operating System
Operating System
Virtual Execution Virtual Execution
Environment Environment
CPU Hard Disk
Memory I/O Devices CPU Memory Hard Disk I/O Devices
What is a physical computer? A physical computer
(sometimes called a physical machine or a physical box) is a
hardware-based device, such as a personal computer.
• A Physical server, also known as a ‘bare-metal
server,’ is a single-tenant computer server,
meaning that a specific physical server is
designated to a single user.
• The resources and components of a physical
server are not shared between multiple users.
• Each physical server includes memory,
processor, network connection, hard drive, and
an operating system (OS) for running programs
and applications.
• A bare-metal server is large in size due to the
powerful processing components that it contains
Virtual machine
• A virtual machine (VM) is a software
computer used as emulation of an
actual physical computer.
• A virtual server operates in a “multi-
tenant” environment, meaning that
multiple VMs run on the same
physical hardware.
• In this case, the computing resources
of a physical server are virtualized
and shared among all VMs running on
it.
• The architecture of a virtual server is
• VMware vSphere or Microsoft Hyper-V, is
installed on top of physical hardware.
• A hypervisor is then used to create and
manage VMs, which have their own
virtual computing resources.
• After that, you can load multiple guest
OSes and server applications on top of
the virtual hardware.
• Thus, virtual servers allow you to run
several Operating systems and
applications on the basis of the shared
physical hardware, which makes it a
Architecture of a Virtual Machine
Comparing Physical servers and Virtual
machines
Performance
• This factor should be considered if your organization works
with a large amount of data which needs to be constantly
processed.
• Physical servers are far more powerful and efficient than
VMs.
• A physical machine and a virtual machine, both having the
same hardware and software resources and capabilities,
cannot perform on the same level.
• If your organization runs operations which require the use of
computing resources to the fullest extent, a physical server
is the optimal choice.
Management
• As for the management factor, VMs are much easier to
maintain than physical servers.
• In case of server failure, it could take several days to
Portability
• One of the major differences between physical server
vs virtual server lies in portability.
• You can easily move VMs across the virtual environment
and even from one physical server to another, with
minimal input on your part.
• This is due to the fact that VMs are isolated from one
another and have their own virtual hardware, which
makes a VM, hardware-independent.
• Moving your physical server environment to another
location is a more resource-intensive task.
Scalability
• A virtual server environment provides the option of on-
demand scalability. A single virtual server can host
multiple VMs at the same time, which can be added or
removed with the click of a mouse.
• Your virtual environment can be scaled up or down
depending on the growth of your business needs.
Security
• Security management is more easily configurable
in a virtual server environment than in a physical
one.
Costs
• Building and maintaining a physical server
environment can be quite expensive.
• This is due to constant hardware and software
upgrades, frequent system failures, and breakdown
of computer components and equipment, which
are difficult or even impossible to repair.
• At the same time, virtualization is considered a
perfect option for enterprises which contain a large
number of servers.
• A virtual server environment allows you to evenly
distribute computing resources among all running
Physical Servers Virtual Machines
Large upfront costs Small upfront costs
No need for licensing purchase VM software licenses
Physical servers and additional equipment A single physical server can host multiple
take a lot of space VMs, thus saving space
No on-demand scalability On-demand scalability
Hardware upgrades are easier to implement;
Hardware upgrades are difficult to
the workload can be migrated to a backup
implement and can lead to considerable
site for the repair period to minimize
downtime
downtime
Difficult to move or copy Easy to move or copy
Advanced capacity optimization is enabled by
Poor capacity optimization
load balancing
Perfect for organizations running services Perfect for organizations running multiple
and operations which require highly operations or serving multiple users, which
productive computing hardware for their plan to extend their production environment
implementation in the future
Types of Virtualization
• Server Virtualization
• Client & Desktop Virtualization
• Application Virtualization
• Network Virtualization
• Storage Virtualization
Server Virtualization
1. Server Virtualization
• Server virtualization is a process of partitioning the
resources of a single server into multiple virtual
servers.
• These virtual servers can run as separate machines.
• Server virtualization allows businesses to run
multiple independent OSs (guests or virtual) all with
different configurations using a single (host) server.
• Instead of purchasing more and more physical
servers, you can save on floor or room space, and
instead virtualize multiple servers and store them
on one single machine instead
• It also means you can easily allocate physical
resources between different servers and change
it as necessary.
• You can easily move the virtual servers from one
host server to another
Server Virtualization
• There are two aspects of server virtualization:
1. Software Virtualization (SoftV) runs the
virtualized OS on top of a software virtualization
platform running on an existing OS.
2. Hardware Virtualization (HardV) runs the
virtualized OS running directly on top of the
hardware without an existing OS.
• The engine used to run hardware virtualization is
usually referred to as a hypervisor.
• The purpose of this engine is to expose hardware
resources to the virtualized OS.
• The first, software virtualization or SoftV, is
often used to begin virtualization projects
because it relies on simpler and often free
technologies,
• but is less efficient because it requires an
underlying host operating system (OS).
• This underlying host operating system also
requires resources and, because of this, will
impact the operation of the virtual machines
running on top of it.
• For this reason, organizations will not use this
model unless it is for testing or development.
Because it runs on top of an existing OS, it is
often simpler to rely on SoftV to learn how
server virtualization technologies work.
•
• There are several benefits to server virtualization:
• The first one is certainly at the deployment level.
A virtual machine can often be built and
customized in less than 20 minutes. You can
deliver a virtual machine that is ready to work
right away in considerably less time than with a
physical machine.
• Virtual machine mobility. You can move a VM
from one host to another at any time. In some
cases, you can move it while it is running.
• Virtual machines support standard configurations.
You can control the way VMs are built.
• VMs are also secure because they can be
completely isolated at any time.
• VMs are also ideal for disaster recovery, since
all you need to do is copy their files to another
location, either within your data-centre or to
another site entirely.
2. Client & Desktop Virtualization
• This is similar to server virtualization, but this
time is on the user’s site where you virtualize
their(user) desktops.
• We change their desktops with thin clients and
by utilizing the datacenter resources.
• Desktop virtualization centralizes desktop
deployments so that you can gain complete
control over them.
• It allows users to rely on a variety of endpoints—
thin computing devices, unmanaged PCs, home
PCs, or public PCs—To access their corporate
desktop infrastructure once again, through the
Remote Desktop Connection (RDC).
• DeskV can be quite a time-saver compared to the cost
of managing distributed systems throughout your
infrastructure.
• All you need (for DeskV) from the physical workstation
are three things:
1. A base operating system
2. Proper virus protection
3. A Remote Desktop Connection client
• You can also secure information by keeping desktops in
the datacenter.
• DeskV is also a great model for testing and
development.
3. Applications Virtualization
• Application virtualization or app virtualization is a
technology that allows users to access and use
an application from a separate computer than
the one on which the application is installed.
• Using application virtualization software, IT
admins can set up remote applications on a
server and then deliver the apps to an end user’s
computer.
• For the user, the experience of virtualized app is
the same as using the installed app on a physical
machine.
4. Network Virtualization
• Network virtualization is when physical networks are
combined into a virtual network based on software instead
of hardware.
• So, a virtual network will have multiple physical networks.
• All the physical parts of the network, such as switches and
routers, are pooled, and their resources can be allocated
as needed to any user or device on the network.
• This is done through a central virtual network
management system. A common type of virtual network is
a Virtual local area network, or VLAN.
• A VLAN combines several network devices into one group,
as if they were a LAN, even if they’re not in local proximity
to each other.
• Examples
VLAN
• A VLAN is a subsection of a local area network
(LAN) created with software that combines
network devices into one group, regardless of
physical location.
5. Storage Virtualization: Storage virtualization is the
process of combining a group of physical storage
devices into one group as if they were one device.
• A commonly known type of virtual storage is called
a Storage Area Network, or SAN.
• Storage virtualization allows applications and
servers to access information from storage systems
without needing to know which physical or virtual
device the data is stored on.
• Virtualizing storage allows data to be easily
backed up and transported between locations, and
data can be more easily accessed.
• Storage Virtualization (StoreV) is used to merge
physical storage from multiple devices so that they
appear as one single storage pool.
• The storage in this pool can take several forms:
Direct attached storage (DAS), Network attached
storage (NAS), or Storage area networks (SANs);
and
• It can be linked-to through several protocols: Fibre
Channel, Internet SCSI (iSCSI), Fibre Channel on
Ethernet, or even the Network File System (NFS)
•