Lesson 6: Virtualization
6.1. Introduction
In our previous lesson we learnt about cloud deployment models: private, public, hybrid and
community. In our lesson today, we will learn about virtualization. Virtualization is a technique,
used to allow sharing single physical instance of an application or resource among multiple
organizations or tenants (customers).
6.2. Lesson structure
This lesson is organized as follows:
Introduction
Lesson structure
Lesson objectives
Virtualization overview
Virtualization concepts
Types of virtualization
Advantages and disadvantages of virtualization
Characteristics of virtualization
Virtualization architecture
Virtualization vs cloud computing
Revision questions
Summary
Suggested reading
6.3. Lesson objectives
By the end of this lesson you will be able to:
Define virtualization
Describe how virtualization works
Discuss the components of virtualization architecture
Describe the pros and cons of virtualization.
6.4. Virtualization overview
Virtualization refers to the process of creating a simulated version of something – such as an
operating system (OS), a server, network resources or a storage device. The basic idea behind
virtualization is to use software to simulate the existence of hardware. This idea enables users to
run more than one independent computer system on a single physical computer system. Using
this technology, an application, operating system or data storage is separated from the underlying
software or hardware. A thin software layer, known as a hypervisor, reproduces the functions
and actions of the underlying hardware for the abstracted hardware or software – creating
multiple virtual machines on a single physical system. The performance of these virtual
machines (simulated computers), however, may not be at par with the operating system running
on the true hardware. Ideally, virtualization is achieved by assigning a logical name to a physical
resource and providing a pointer to that physical resource on demand.
6.5. Virtualization concepts
Host: The actual physical computer on which one or more virtual machines run. Also known as
the bare metal.
Guest Operating System: An operating system that runs within a virtual machine
Hypervisor: The virtualization operating system that creates and runs virtual machines. It is a
firmware or low-level program that acts as a Virtual Machine Manager. Also called virtual
machine monitor(VMM). Examples Hyper-V, Virtual Box, VMLite workstation,
Virtual machine(VM)- a software computer that, like a physical computer, runs an operating
system and applications. Also known as the guest.
Thin client: This is a low budget endpoint computing device that depends heavily on a network
connection to a central server for its computational activities.
6.6. Types of virtualization
Virtualization allows IT administrators to create useful IT services using resources that are
traditionally bound to hardware. It allows users to use a physical machine’s full capacity by
distributing its capabilities among many users or environments. Virtual machine(vm) appears to
be a complete, self-contained computer system with its own processor (or, more likely,
processors), memory, disk drives, CD-ROM/DVD drives, keyboard, mouse, monitor, network
interfaces, USB ports, and so on. Like a real computer, each virtual machine requires an
operating system to do productive work. There several types of virtualization:
a) Network Virtualization: This is a type of virtualization that splits up the available
bandwidth into channels – each of which is separate and mobile. This means, each channel
can be reassigned or assigned to a particular server or device in real time. Virtualization
masks the true complexity of the network, by splitting it into manageable parts. In essence,
this allows for changes to be made and resources to be deployed on those specific channels,
instead of the entire network.
b) Storage Virtualization: This involves pooling together of physical storage space from
multiple storage devices, into one. This single storage device is then managed by a central
console. Storage virtualization helps by minimizing management costs and helps companies
to utilize storage effectively.
c) Desktop Virtualization: In this type of virtualization, a workstation is virtualized as
opposed to a server. This allows the user to access the desktop remotely, using what is known
as a thin client. Since the workstation is now running in a data server, accessing it becomes
easier and more secure.
d) Data Virtualization: This virtualization is an approach to data management, where
applications can retrieve and manipulate data, without the need for technical data.
Essentially, data retrieval and management can be done without knowing where it is
physically located, how it is formatted, or how it is sourced.
e) Application Virtualization: In this virtualization, the application layer is abstracted away
from the operating system. This allows the application to run in an encapsulated form,
without needing on the underlying Operating System. Using this technique for instance, a
windows application can run on Linux.
f) Server Virtualization: In this type of virtualization, the server resources are hidden from
server users. This includes information like the number of servers, the identity of the users,
processors and operating systems that are working on a single server. This way, the user
doesn’t need to understand and manage the complexity of server resources. The technique
also increases resource sharing and utilization.
6.7. Advantages of virtualization
By allowing separating the software from underlying hardware virtualization provides the
following benefits:
Reduced capital and operating costs.
Minimized or eliminated downtime.
Increased IT productivity, efficiency, agility and responsiveness.
Faster provisioning of applications and resources.
Greater business continuity and disaster recovery.
Simplified data center management.
Availability of a true Software-Defined Data Center.
6.8. Disadvantages of virtualization
The prominent limitations of virtualization are:
It creates a security risk.
It can have a high cost of implementation.
Not every application or server is going to work within an environment of virtualization.
It requires several links in a chain that must work together cohesively.
Although you save time during the implementation phases of virtualization, it costs users
time over the long-run when compared to local systems.
6.9. Characteristics of virtualization
Virtualization and virtual machines (VM) in particular have the following attributes
a) Partitioning
Run multiple operating systems on one physical machine.
Divide system resources between virtual machines.
b) Isolation
Provide fault and security isolation at the hardware level.
Preserve performance with advanced resource controls.
c) Encapsulation
Save the entire state of a virtual machine to files.
Move and copy virtual machines as easily as moving and copying files.
d) Hardware Independence
Provision or migrate any virtual machine to any physical server.
6.9. Virtualization architecture
This is a conceptual model specifying the arrangement and interrelationships of the particular
components involved in delivering a virtual resource. Virtualization is commonly hypervisor-
based. The hypervisor isolates operating systems and applications from the underlying computer
hardware so the host machine can run multiple virtual machines (VM) as guests that share the
system's physical compute resources.
Figure 1: Virtualization architecture
6.10. Virtualization vs cloud computing
Virtualization and cloud computing are not interchangeable. Virtualization is software that
makes computing environments independent of physical infrastructure, while cloud computing is
a service that delivers shared computing resources (software and/or data) on demand via the
Internet. As complementary solutions, organizations can begin by virtualizing their servers and
then moving to cloud computing for even greater agility and self-service. So virtualization
replicates the acts of a physical component in virtual form. In a cloud computing set up multiple
computers or hardware pieces send date through an IP or a wireless connected network.
Virtualization Cloud computing
Definition Technology, that allows to Delivery method for providing
fully separate software from data and computing resources
underlying hardware over the network on demand
Partitioning On-demand service
Major Isolation Broad network access
characteristics Encapsulation Resource pooling
Hardware Independence Rapid elasticity
Measured service
Virtual machines Software as a Service(SaaS)
Use cases Virtual resources Platform as a Service(PaaS)
Virtual applications Infrastructure as a
Service(IaaS)
Table: Comparing virtualization and cloud computing
6.11. Revision questions
a) Explain how virtualization differ from cloud computing.
b) Outline any three advantages of virtualization.
c) With regard to virtualization describe the following concepts:
i. Hypervisor
ii. Virtual machine
iii. Bare machine
6.12. Summary
In this lesson we have learnt that virtualization is the abstraction of computer resources. We have
learnt that virtualization hides the physical characteristics of computing resources from their
users, their applications or end users. It makes a single physical resource (such as a server, an
operating system, an application or a storage device) appear to function as multiple virtual
resources. We have also discussed various types of virtualization. We have also discussed about
the pros and cons of virtualization. Finally, we have highlighted the differences between
virtualization and cloud computing.
6.13. Suggested reading
https://www.vmware.com/solutions/virtualization.html
https://www.tutorialspoint.com/virtualization2.0/virtualization2.0_overview.htm