Professional Documents
Culture Documents
TEJAS SAWANT
BE-CE-D
EXPERIMENT-2
VIRTUALIZATION
Virtualization is the "creation of a virtual (rather than actual) version of something, such as a
server, a desktop, a storage device, an operating system or network resources".
In other words, Virtualization is a technique, which allows to share a single physical instance
of a resource or an application among multiple customers and organizations. It does by
assigning a logical name to a physical storage and providing a pointer to that physical resource
when demanded.
Creation of a virtual machine over existing operating system and hardware is known as
Hardware Virtualization. A Virtual machine provides an environment that is logically
separated from the underlying hardware.
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.
Software called hypervisors separate the physical resources from the virtual environments—
the things that need those resources. Hypervisors can sit on top of an operating system (like
on a laptop) or be installed directly onto hardware (like a server), which is how most
enterprises virtualize. Hypervisors take your physical resources and divide them up so that
virtual environments can use them. Resources are partitioned as needed from the physical
environment to the many virtual environments. Users interact with and run computations
within the virtual environment (typically called a guest machine or virtual machine). The
virtual machine functions as a single data file. And like any digital file, it can be moved from
one computer to another, opened in either one, and be expected to work the same.
PARAVIRTUALIZATION is virtualization in which the guest operating system (the one being
virtualized) is aware that it is a guest and accordingly has drivers that, instead of issuing
hardware commands, simply issue commands directly to the host operating system. This also
includes memory and thread management as well, which usually require unavailable
privileged instructions in the processor.
FULL VIRTUALIZATION is virtualization in which the guest operating system is unaware that it
is in a virtualized environment, and therefore hardware is virtualized by the host operating
system so that the guest can issue commands to what it thinks is actual hardware, but really
are just simulated hardware devices created by the host.
TYPES OF VIRTUALIZATION
1. DATA VIRTUALIZATION
Data that’s spread all over can be consolidated into a single source. Data virtualization
allows companies to treat data as a dynamic supply—providing processing capabilities
that can bring together data from multiple sources, easily accommodate new data
sources, and transform data according to user needs.
2. DESKTOP VIRTUALIZATION
Easily confused with operating system virtualization—which allows you to deploy multiple
operating systems on a single machine—desktop virtualization allows a central
administrator (or automated administration tool) to deploy simulated desktop
environments to hundreds of physical machines at once.
3. SERVER VIRTUALIZATION
Servers are computers designed to process a high volume of specific tasks really well so
other computers—like laptops and desktops—can do a variety of other tasks. Virtualizing
a server lets it to do more of those specific functions and involves partitioning it so that
the components can be used to serve multiple functions.
4. OPERATING SYSTEM VIRTUALIZATION
Network functions virtualization (NFV) separates a network's key functions (like directory
services, file sharing, and IP configuration) so they can be distributed among
environments. Once software functions are independent of the physical machines they
once lived on, specific functions can be packaged together into a new network and
assigned to an environment.
FEATURES
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.
6. ISOLATION
Virtualization allows providing guests—whether they are operating systems, applications,
or other entities—with a completely separate environment, in which they are executed.
The guest program performs its activity by interacting with an abstraction layer, which
provides access to the underlying resources. The virtual machine can filter the activity of
the guest and prevent harmful operations against the host.
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. In the case of programming-level virtualization, as
implemented by the JVM or the .NET runtime, the binary code representing application
components (jars or assemblies) can run without any recompilation on any
implementation of the corresponding virtual machine.
ADVANTAGES
1. USES HARDWARE EFFICIENTLY
Most businesses spend a lot of capital setting up their systems and servers but eventually
use only a fraction of it effectively. Instead, if they opt for virtualization, they can create
multiple instances on the same hardware and extract the maximum value out of it.
3. RECOVERY IS EASY
With virtual instances on remote servers, duplication, backup, and recovery are also
easier.
4. QUICK AND EASY SETUP
Setting up physical systems and servers is a time-consuming affair. You need to raise a
purchase order and wait for it to be processed. Once done, then await the products to be
shipped and set up, which can take hours. Overall, it is a long wait worth days or even
weeks for the entire setting-up process. On the flipside, with virtualization, you can simply
get started within minutes have a productive setup.
DISADVANTAGES
1. HIGH INITIAL INVESTMENT
As helpful virtualization is, it does have some flaws, and the high initial investment is one
of the major one. Virtualization indeed helps the business reduce operational costs. But
the initial setup cost of servers and storage is higher than a regular setup. Hence,
companies need years before they break even and then realize savings and higher
profitability with virtualization. It is a bad bet for companies opting for a large set up at
the beginning. They could instead opt for a regular desktop setup and then gradually
make a move to desktop virtualization.
HYPERVISOR
A hypervisor, also known as a virtual machine monitor or VMM, is software that creates and
runs virtual machines (VMs). A hypervisor allows one host computer to support multiple guest
VMs by virtually sharing its resources, such as memory and processing.
There are several benefits to using a hypervisor that hosts multiple virtual machines:
The hypervisor runs directly on the underlying host system. It is also known as “Native
Hypervisor” or “Bare metal hypervisor”. It does not require any base server operating system.
It has direct access to hardware resources. Examples of Type 1 hypervisors include VMware
ESXi, Citrix XenServer and Microsoft Hyper-V hypervisor.
Pros: Such kind of hypervisors are very efficient because they have direct access to the
physical hardware resources (like Cpu, Memory, Network, Physical storage). This causes the
empowerment the security because there is nothing any kind of the third-party resource so
that attacker couldn’t compromise with anything.
Cons: One problem with Type-1 hypervisor is that they usually need a dedicated separate
machine to perform its operation and to instruct different VMs and control the host hardware
resources.
2. TYPE-2 HYPERVISOR:
A Host operating system runs on the underlying host system. It is also known as ‘Hosted
Hypervisor”. Such kind of hypervisors doesn’t run directly over the underlying hardware
rather they run as an application in a Host system (physical machine). Basically, software
installed on an operating system. Hypervisor asks the operating system to make hardware
calls. Example of Type 2 hypervisor includes VMware Player or Parallels Desktop. Hosted
hypervisors are often found on endpoints like PCs. The type-2 hypervisor is are very useful
for engineers, security analyst
Pros: Such kind of hypervisors allows quick and easy access to a guest Operating System
alongside the host machine running. These hypervisors usually come with additional useful
features for guest machine. Such tools enhance the coordination between the host machine
and guest machine.
Cons: Here there is no direct access to the physical hardware resources so the efficiency of
these hypervisors lags in performance as compared to the type-1 hypervisors, and potential
security risks are also there an attacker can compromise the security weakness if there is
access to the host operating system so he can also access the guest operating system.
Figure 10: Type 1 Hypervisor v/s Type 2 Hypervisor.
INSTALLATION
CONCLUSION
In conclusion, virtualization is the technique of creating a virtual version of a computer
hardware platform, storage device or a network resource. Virtualization can increase IT
agility, flexibility and scalability while creating significant cost savings.