0% found this document useful (0 votes)
88 views9 pages

Virtualization and Virtual Machine Overview

Virtualization technology introduced the concept of running multiple virtual machines on the same physical hardware. This document discusses various types of virtual machines including process virtual machines like Java Virtual Machines and system virtual machines that can run independent operating systems. It also describes how virtual machine monitors allow for the partitioning of physical resources and enable features like virtual machine migration that improve elasticity of computing resources. The document outlines several applications of virtualization in enterprises such as improved security, desktop virtualization, server consolidation, and automated infrastructure management.
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)
88 views9 pages

Virtualization and Virtual Machine Overview

Virtualization technology introduced the concept of running multiple virtual machines on the same physical hardware. This document discusses various types of virtual machines including process virtual machines like Java Virtual Machines and system virtual machines that can run independent operating systems. It also describes how virtual machine monitors allow for the partitioning of physical resources and enable features like virtual machine migration that improve elasticity of computing resources. The document outlines several applications of virtualization in enterprises such as improved security, desktop virtualization, server consolidation, and automated infrastructure management.
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/ 9

2/3/2016

Virtualization

Virtual Machine Technology


 Most influential technology in enabling the cloud computing
paradigm
 Introduced during the era of mainframes as a means of sharing
computing resources amongst users
 Any means by which many different users are able simultaneously
to interact with a computing system while each perceiving that
they have an entire ‘physical machine’ to themselves, is a form of
virtualization.
 Traditional multiprogramming operating system (e.g., Linux) is
also a form of virtualization
 Allows each user process to access system resources oblivious of
other processes
 Abstraction provided by: OS system calls and hardware instructions
accessible to user-level processes

2 2/3/2016

1
2/3/2016

Types of Virtual Machines


 Process Virtual Machine:
 Process itself runs as a virtual machines
 Provides system-independent abstraction of the machine to high-level
applications
 Example: JavaVirtual Machine (JVM)
 Some cloud platforms such as Google App Engine and Microsoft Azure
provide process virtual machine abstraction in the context of a web based
architecture.
 System Virtual Machine:
 Provides complete hardware instruction set as the abstraction provided to
users of different virtual machines
 Multiple virtual machine (VM) instances share the same physical hardware
through a VMM (Virtual Machine Monitor), commonly known as hypervisor.
 Each such VM can run an independent OS. Thus, the same physical machine
effectively runs different OS instances like Windows, Linux, etc.
3 2/3/2016

Types of Virtual Machines


Contd…
 Two variants of System Virtual Machines:
 System Virtual Machines (Host):
 Implemented as a process running on a host operating system that has
been installed on the machine in the normal manner
 Multiple guest operating systems can be installed on different VMs that
each run as operating system processes under the supervision of the VMM
 Example: VMware
 System Virtual Machines (Native):
 Does not require a host operating system, and runs directly on the
physical machine
 Supports multiprogramming across different VMs, with its ‘system calls’
being hardware instructions
 Example: XenServer,VMware ESX

4 2/3/2016

2
2/3/2016

Types of Virtual Machines


Contd…

Source: “Enterprise Cloud Computing” by Gautam Shroff

5 2/3/2016

System Virtual Machines


 Differences between the ‘virtual machine’ as perceived by a
traditional operating system process and a true system VM are:
 Processes under an operating system are allowed access to hardware
through system calls, whereas a system VMM needs to provide a full
hardware instruction set for use by each virtual machine
 Each system virtual machine needs to be able to run a full operating
system, while itself maintaining isolation with other virtual machines.
 NativeVMM:
 Emulate instructions of the target instruction set
 Run the instructions of each if its virtual machines natively on the
hardware
 Maintains the state of different virtual machines at all levels if
memory hierarchy (including registers etc.) indirectly in memory and
switching between these as and when required

6 2/3/2016

3
2/3/2016

System Virtual Machines


Contd…
 VMM traps the privileged instructions and runs all others natively
on the hardware.
 The privileged instructions themselves are emulated, so that when
an OS running in a virtual machine attempts to, say, run a
privileged instruction such as setting timer interrupt, it actually
sets a virtual timer interrupt.
 Newer editions of the x86 family have begun to include ‘hardware
support’ for virtualization
 Hardware support for virtualization is also available. For example,
Intel VT-x (Vanderpool) includes a new VMX mode of operation.
 When VMX is enabled there is a new root mode of operation
exclusively for use by the VMM.

7 2/3/2016

Virtual Machines and Elastic


Computing
 VM technology enables decoupling physical hardware from
the VMs that run on them.
 VMs can have different instruction sets from the physical
hardware if needed.
 VMM partitions the actual physical resources in time, as with
I/O and network devices.
 VMM partitions the actual physical resources in space, as
with storage and memory.
 In case of multiple CPUs, compute power can also be
partitioned in time (using traditional time slices) or space
(where each CPU is reserved for subset of VMs).

8 2/3/2016

4
2/3/2016

Virtual Machines and Elastic


Computing (Contd…)
 An elastic environment is one which is completely virtualized
with all hardware resources running under a set of
cooperating VMMs.
 In such environment, provisioning of VM is largely automated
and can be dynamically controlled according to demand.
 The key success factors in achieving such elasticity is the
degree of automation that can be achieved across multiple
VMMs working together to maximize utilization.
 The larger the scale, the greater the potential for amortizing
demand efficiently across the available capacity while giving
the users an illusion of infinite computing resources.

9 2/3/2016

Virtual Machine Migration


 VM migration is a key feature for elasticity, that enables a VM
running on one physical machine to be suspended, its state
saved and transported to another physical machine where it
resumes execution from exactly the same state.
 Migrating a VM involves capturing and copying the entire
state of machine at snapshot in time including
 Processor and memory state
 State of virtual HW resources such as BIOS, devices, N/W
MAC address
 State of disk space including system and user directories and
swap space used for virtual memory

10 2/3/2016

5
2/3/2016

Virtualization Application in
Enterprises
 Security through virtualization
 Desktop virtualization and application streaming
 Server consolidation
 Automating infrastructure management

11 2/3/2016

Security through Virtualization


 Intrusion detection systems (IDS) traditionally run on the network
and operate by monitoring network traffic for suspicious behavior
by matching against a database of known attack patterns.
 Virtualization opens up the possibility of building IDS capabilities
into the VMM itself.
 It enables greater isolation of IDS from the monitored hosts while
retaining complete visibility into host’s state.
 It allows for complete mediation of interactions between the host
software and the underlying hardware, enabling a suspect VM to
be easily isolated from the rest of the data center.
 Virtualization provides user-group specific, low level logging of
system activities.
 This allows security incidents to be traced and diagnosed by
replaying the incident on a copy of the VM.

12 2/3/2016

6
2/3/2016

Desktop Virtualization and


Application Streaming
 Virtualization can be used to improve manageability of end user devices
in large environments.
 First approach: Deploy all end client systems as VMs on central data
centers which are then accessed by remote desktop.
 This approach is not popular because of need for continuous network
connectivity which is still not ubiquitous and ‘always on’
 Second approach: Application Streaming
 Instead of running apps on central VMs, application streaming involves
maintaining only VM images centrally.
 An endpoint client, such as a desktop, runs a hypervisor that also
downloads the VM image from the server and launches it on the
endpoint client.
 VM image can be cached for efficiency and only incrementally updated
when needed.

13 2/3/2016

Automating Infrastructure
Management
 Level 0 –Virtual images
 Packaging standard OS environments for different class of apps as virtual machines
 Reduces start up time for development, testing and production deployment
 Significant reduction in infrastructure management costs
 Level 1 – Integrated provisioning
 Provisioning of VMs along with network and storage (SAN) resources so that all can
be provisioned on chosen physical server by an admin thro a single interface
 E.g. VMware’s VirtualCenter integrated suite.
 Level 2 – Elastic provisioning
 Automatically deciding physical server on which to provision a VM and bringing up
the VM without any administrator intervention.
 This decision is done based on the resource requirements of VM, the current available
capacity and the projected demand.
 E.g. Amazon EC2

14 2/3/2016

7
2/3/2016

Automating Infrastructure
Management (Contd…)
 Level 3 – Elastic operations
 Automatically provision new VMs or migrate existing VMs based on
automatic monitoring of the state of all virtual physical resources and
the below reasons.
 Load balancing: to improve response time of apps that need more
resources
 Security: to quarantine a VM that appears to have been compromised
or attacked
 Collocation: to bring VMs that are communicating with each other
physically close together to improve performance
 Fault tolerance: to migrate apps from physical machines that have
indicated possible imminent failure or need for maintenance.
 Fault recovery: to provision a new instance VM and launch it with the
required set of apps running in order to recover from the failure of
the original instance.

15 2/3/2016

Pitfalls of Virtualization
 App deployments often replicate app server and database instances to
ensure fault tolerance. Elastic provision can result in two such replicas
using VMs deployed on the same physical server. If the physical server
fails, both instances are lost, defeating the purpose of replication
 Virtualization provides another layer at which intrusions can be detected
and isolated i.e. VMM. However if the VMM itself is attacked, multiple
VMs are affected
 If the ‘server sprawl’ that motivated the building of virtualized data
center merely results in equally complex ‘virtual machine sprawl’, then
the situation may become worse than earlier.
 VMM can partition the CPU, memory and I/O bandwidth of physical
server across virtual machines. However it cannot ensure that these
resources are made available to each virtual server in a synchronized
manner. Thus the fraction of HW resources that the VM is able to utilize
may be less than what has been provisioned by the VMM.

16 2/3/2016

8
2/3/2016

THANK YOU

17 2/3/2016

You might also like