0% found this document useful (0 votes)
1 views

2-Module 2_ Virtualization, Introduction to Virtual Machines-26!07!2024

Virtualization is a technology that creates virtual representations of physical machines, allowing multiple operating systems to run on the same hardware simultaneously. It enhances resource utilization, reduces costs, and provides benefits such as improved security, manageability, and scalability. However, it may involve upfront costs and require specialized IT expertise for implementation and management.

Uploaded by

harshraib5
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1 views

2-Module 2_ Virtualization, Introduction to Virtual Machines-26!07!2024

Virtualization is a technology that creates virtual representations of physical machines, allowing multiple operating systems to run on the same hardware simultaneously. It enhances resource utilization, reduces costs, and provides benefits such as improved security, manageability, and scalability. However, it may involve upfront costs and require specialized IT expertise for implementation and management.

Uploaded by

harshraib5
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 108

BCSE408L

Cloud Computing
Module 2 – Virtualization

Dr. P.SURESH
Associate Professor
School of Computer Science and Engineering
Vellore Institute of Technology, Vellore
Virtualization
A way to begin with Virtual Reality….
- Rahul Khanwani
Virtualization
Business Adoption of Virtualization Technology
Virtualization
What is Virtualization?
• Virtualization is technology that you can use to create virtual representations of servers,
storage, networks, and other physical machines.
• Partitions a single physical machine into multiple virtual machines
• For Example: - Dividing hard drive into logical portions
• Mapping a Drive
• Using FTP servers.
• Virtualization is a way to run multiple OS and user applications on the same hardware
• E.g., run both Windows and Linux on the same laptop
• How is it different from dual-boot?
• Dual Boot - OSes are completely isolated from each other - allows you to choose between
the two when you start your computer, giving you the flexibility to switch between them
based on your needs.
• Virtualization - OSes run simultaneously without rebooting it- multiple OSes within your
primary environment
What is Virtualization?
• Terminology
• Host – the machine and/or software on which the VMM is implemented
• Guest – the OS which executes under the control of the VMM
What is Virtualization?
• Virtualization is a technique of partitioning the resources of a single computing platform
into multiple segregated, virtualized, execution environments.
• Each environment runs independently of the other, thus allowing multiple operating
systems to run on the same hardware.
• The concept of virtualization
already present in every-day
computing…
• Most modern operating systems
contain a simplified system of
virtualization.
• Each running process is able to
act as if it is the only thing
running. The CPUs and memory
are virtualized.
What is Virtualization?
• Virtualization, in computing, refers to the act of creating a virtual (rather than actual)
version of something, including but not limited to a virtual computer hardware platform,
operating system (OS), storage device, or computer network resources.
• abstracting operating system,
application, storage or network
away from the true underlying
hardware or software.
• It creates the illusion of physical
hardware to achieve the goal of
operating system isolation.
• The term "virtualization" traces its roots to 1960s mainframes, during which it was a
method of logically dividing the mainframes' resources for different applications.
What is Virtualization?
Normal Computers Virtualization

Multiple Applications
Virtualization Reference Model

• Three Layers in an virtualized


environment:
• Guest
• Host
• Virtualized Layer
Before and After Virtualization!!!
Need for Virtualization
Business demanded: End users demanded:
 Cost savings  Frequent refresh
 Flexibility  Easy Access
 Mobility  BYOD ( Bring Your Own Device)
Enhanced Performance
Limited use of Hardware
and Software Resources
Need for Shortage of Space
virtualization
Eco-friendly Initiatives

Administrative Costs
Need for Virtualization
Enhanced Performance
• Most of the end user systems have sufficient resources which
can host a virtual machine manager and can perform a virtual
machine with acceptable performance so far.
Limited use of Hardware and Software Resources
• Efficiency of IT infrastructure could be increased by using their sources after hours
for other purposes.
• This environment is possible to attain with the help of Virtualization.
Shortage of Space
• Mostly, enterprises are unable to pay to build any other data center to
accommodate additional resource capacity.
• This leads to the diffusion of a technique which is known as server consolidation.
Need for Virtualization
Eco-friendly Initiatives
• Server consolidation drops the power consumed and cooling
impact by having a fall in the number of servers.
• Virtualization can provide a sophisticated method of server
consolidation.
Administrative Costs
• The administrative costs are increased as per the number of servers.
• Virtualization decreases the number of required servers for a given workload,
hence reducing the cost of administrative employees.
Major Features of Virtualization
1. Increased Security
• Execution of a guest in a secure, controlled execution environment.
• Virtual machine(VM) represents an emulated environment in which the guest is
executed.
• All actions performed in VM, then translates and applies them to the host.
• Allows the virtual machine manager to control and filter the activity of the guest,
thus preventing some harmful operations from being performed.
• Resources exposed by the host can then be hidden or simply protected from the
guest.
• Sensitive Information in the host can be naturally hidden without the need to
install complex security policies.
Major Features of Virtualization
2. Managed Execution

• Sharing
• Virtualization allows the creation of a separate computing environments
within the same host.
• To fully exploit the capabilities of a powerful guest, which would otherwise be
under utilized.
Major Features of Virtualization
2. Managed Execution

• Aggregation
• Virtualization also allows aggregation, which is the opposite to sharing
• A group of separate hosts can be tied together and represented to guests as a
single virtual host.
Major Features of Virtualization
2. Managed Execution

• Emulation
• 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.
• Able to provide virtual hardware and emulate a particular kind of device such as
Small Computer System Interface (SCSI) devices for file I/O, without the hosting
machine having such hardware installed.
• Old and legacy software that does not meet the requirements of current systems
can be run on emulated hardware without any need to change the code.
Major Features of Virtualization
2. Managed Execution

• 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.
• Allows multiple guests to run on the same host without interfering with each
other.
• Provides a separation between the host and the guest.
Major Features of Virtualization
2. Managed Execution

• Performance Tuning
• Easier to control the performance of the guest by finely tuning the properties of
the resources exposed through the virtual environment.
• Means to effectively implement a quality-of-service(QoS) infrastructure that
more easily fulfills the service-level agreement(SLA) established for the guest.
Major Features of Virtualization
2. Managed Execution

• Portable
• The guest is packaged into a virtual image that, in most cases, can be safely
moved and executed on top of different virtual machines.
• Virtual images are generally proprietary formats that require a specific virtual
machine manager to be executed.
• Allows having your own system always with you and ready to use as long as the
required virtual machine manager is available.
What is a Virtual Machine?
• A Virtual Machine (VM) is a compute resource that uses software
instead of a physical computer to run programs and deploy apps.
• A virtual machine (VM) is a fully-fledged, standalone operating
environment running on a physical computer.
• Unlike the host computer its running on, a VM is not a physical
machine, thus the designation of virtual.
• However, VMs cant directly access these hardware resources. There is a layer of
abstraction between a VM and its physical host. This abstraction layer is called
a hypervisor or Virtual Machine Manager (VMM).
• A hypervisor is a specialized software program that runs on the physical host and
interacts with both the host machine and the VM, abstracting the host computers
resources to the VM.
• The VM, on the other hand, thinks the resources presented to it by the hypervisor are
coming from a physical machine.
Types of Virtual Machine
• VM Types
• Depending on their use and level of correspondence to any physical computer,
virtual machines can be divided into two categories
• System Virtual Machines
• Process Virtual Machine
Types of Virtual Machine
• VM Types
• System Virtual Machines
• A system platform that
supports the sharing of the
host computer's physical
resources between multiple
virtual machines, each running
with its own copy of the
operating system.
• The virtualization technique is provided by a software layer known as a
hypervisor, which can run either on bare hardware or on top of an operating
system.
Types of Virtual Machine
• Types
• Process Virtual Machine
• Designed to provide a platform-independent programming environment that
masks the information of the underlying hardware or operating system and
allows program execution to take place in the same way on any given platform.
Virtual Machine Monitor (or) Hypervisor
• Each execution environment is called a guest and the
computing platform on which they execute is called the
host.
• The software enabling these multiple execution
environments is commonly referred to as Hypervisor or
Virtual Machine Monitor (VMM).
• The Hypervisor runs on the host and acts as a bridge
between the host and the guests
Virtual Machine Monitor (or) Hypervisor
• The central component of a VM is a type of software called
a hypervisor.
• A hypervisor acts to isolate an individual virtual machine in
the cloudspace.
• A hypervisor isn’t just a divider for VMs — it’s much more
than that - In addition to providing an impermeable virtual
border between multiple OSes, the hypervisor will simulate
the hardware components of a traditional operating
system.
• Virtualized versions of hardware resources like CPU, I/O,
memory, and others will be available in your hypervisor.
Virtual Machine Monitor (or) Hypervisor
• A major advantage to hypervisors is their ability to work without special hardware – i.e.,
the base console itself can run a hypervisor without VM-specific hardware.
• flexible solution for multi-OS systems.
• Because the hypervisor can isolate each simulated system from the others, a virtual
environment can contain multiple hypervisors for an ever-expanding number of virtual
machines.
• Types
• Type 1 Hypervisor
(also called bare metal or native)
• Type 2 Hypervisor
(also known as hosted hypervisors)
Virtual Machine Monitor (or) Hypervisor
• Type I Hypervisor
• Bare metal Approach
• is a layer of software we install directly on top of a physical server and its
underlying hardware.- Runs directly on the system hardware
• There is no software or any operating system in between, hence the name
bare-metal hypervisor.
• A Type 1 hypervisor is proven in providing excellent performance and stability
since it does not run inside Windows or any other operating system.
• Type 1 hypervisors are an OS themselves, a very basic one on top of
which you can run virtual machines.
• The hypervisor is running on a physical machine and serves virtualization
purposes only. You cannot use it for anything else.
• May require hardware assisted virtualization technology support by the CPU.
• Limited set of hardware drivers provided by the hypervisor vendor.
• E.g.: VMWare ESXi, Citrix Hypervisor (formerly known as Xen Server),
Microsoft Hyper-V, KVM (Kernel-Based Virtual Machine)
Virtual Machine Monitor (or) Hypervisor
• Type II Hypervisor
• Hosted Approach
• This type of hypervisor runs inside of an operating system of a
physical host machine.
• As opposed to type 1 hypervisors that run directly on the hardware,
hosted hypervisors have one software layer underneath.
• Runs virtual machines on top of a host OS (windows, Unix etc.)
• Relies on host OS for physical resource management.
• Type 2 Hypervisors consists of
• A physical machine.
• An operating system installed on the hardware (Windows, Linux,
macOS).
• A type 2 hypervisor software within that operating system.
• The actual instances of guest virtual machines.
• Host operating system provides drivers for communicating with the
server hardware.
• E.g.: VirtualBox
Virtual Machine Monitor (or) Hypervisor

• The enterprise software that supports hardware-assisted–Full


virtualization which falls under
• Hypervisor type1 (Bare metal)
 Vmware ESXi/ESX
 KVM
 Hyper-V
 Xen
• Hypervisor type 2
 VMware Workstation(64-bit guests only )
 Virtual Box (64-bit guests only )
Current Hypervisors
Virtual Machine - Benefits

• Instant provisioning-fast scalability


• Live Migration is possible
• Load balancing and consolidation
in a Data Center is possible.
• Low downtime for maintenance
• Virtual hardware supports legacy
operating systems efficiently.
• Security and fault isolation
Benefits of Virtualization
• Easy manageability
• Elimination of Compatibility issues
• Fault isolation
• Improved security
• Improved utilization
• Portability
• Testing
• Rapid deployment
• Reduced Costs - Sharing of resources helps cost reduction
Benefits of Virtualization
• Isolation: Virtual machines are isolated from each other as if they are physically
separated
• Encapsulation: Virtual machines encapsulate a complete computing environment
• Hardware Independence: Virtual machines run independently of the underlying
hardware
• Portability: Virtual machines can be migrated between different hosts.
• An entire virtual machine is saved as a file - Move, copy, or export as easily as a
file
• Speedy Recovery Time: If system failure or disaster occurs virtualization allows for
faster recovery of IT resources which provides for improved business continuity and
revenue.
• Better Scalability: Allows for more flexibility when it comes to company growth.
• Instead of purchasing additional infrastructure components, new applications and
upgrades can easily be implemented with virtualization.
Benefits of Virtualization
• Cost and Space Savings: Saving on the costs of IT infrastructure is a reality when you
switch to virtualization.
• Security :
• Hardware is isolated from the operating system
• Recovery is as easy as restoring a file
• Better Return on Investment:
• In addition to reducing the costs of maintaining an older infrastructure,
companies can increase their ROI by ensuring business continuity following a
disaster and preventing revenue loss.

• These are the basic benefits that can be gained by switching to virtualization.
• There are additional benefits that will depend upon the type of infrastructure which is
necessary for a specific industry.
Virtualization - Limitations
Upfront costs - The investment in the virtualization software, and possibly additional hardware might
be required to make the virtualization possible.
• This depends on your existing network.
• Many businesses have sufficient capacity to accommodate the virtualization without requiring a lot of
cash.
• This obstacle can also be more readily navigated by working with a Managed IT Services provider,
who can offset this cost with monthly leasing or purchase plans.
Software licensing considerations - This is becoming less of a problem as more software vendors
adapt to the increased adoption of virtualization, but it is important to check with your vendors to
clearly understand how they view software use in a virtualized environment
Possible learning curve - Implementing and managing a virtualized environment will require IT staff
with expertise in virtualization.
• On the user side a typical virtual environment will operate similarly to the non-virtual environment.
• There are some applications that do not adapt well to the virtualized environment – this is something
that your IT staff will need to be aware of and address prior to converting.
Mixed OS Environment
Multiple VMs can be implemented on a single hardware platform to
provide individuals or user groups with their own OS environments.
Mixed OS Environment
Virtualization implies a two-level hierarchical scheduling framework.
VM Migration
Load Balancing

Better Response
time
Consolidation

Reduces number of
Physical Machine
requirement
Basics of Virtualization
• Categories of Instructions
• In the architecture field, the CPU designers separate instructions into different
categories., such as Privilege and Non-Privilege instruction.
• Privilege instruction
• Non-Privilege instruction
• In the virtualization field, the hypervisor designers separate instructions into two
categories.
• Sensitive instruction
• Those instructions that interact with hardware, which include control-
sensitive and behavior-sensitive instructions.
• Ex: Instruction to modify page table base register, Software Interrupt, Context
Switching
• Non-Privilege instruction
• All other instructions - Ex: Normal arithmetic operation
Basics of Virtualization
• An architecture is virtualizable if the sets of behavior and control sensitive instructions
are subsets of the set of privileged instructions.
• On a virtualizable arch, a VMM works using a trap and emulate technique.
• Normal instructions run directly on processor.
• Privileged instructions trap into the VMM.
• The VMM emulates the effect of the privileged instructions for the guest OS.
Basics of Virtualization
• Privilege Instructions
• Privileged instructions are those that can only be executed by the operating
system kernel or a privileged process, such as a device driver.
• These instructions typically perform operations that require direct access to
hardware or other privileged resources, such as setting up memory mappings or
accessing I/O devices.
• Privileged instructions are executed in kernel mode, which provides unrestricted
access to the system resources.
• HOWEVER, which instructions are privilege is decided by CPU designers, OS
designer cannot change that.
• Those instructions are trapped if the machine is in user mode and are not
trapped if the machine is in kernel mode.
• Ex: Instruction to modify page table base register, Context Switching
Basics of Virtualization
• Non-privilege Instructions
• Non-privileged instructions are those that can be executed by any process,
including user-level processes.
• These instructions are typically used for performing computations, accessing
user-level resources such as files and memory, and managing process control.
• Non-privileged instructions are executed in user mode, which provides limited
access to system resources and ensures that processes cannot interfere with
one another.
Basics of Virtualization
• What is a Trap?
• If you execute privilege instruction in non-privilege mode, it will trigger an event and enter
into the privilege mode.
• This kind of behavior is also known as “trap”.
• When CPU is running in user mode, some internal or external events, which need to be
handled in kernel mode, take place.
• Then CPU will jump to hardware exception handler vector, and execute system operations in
kernel mode.
• Trap Types:
• System Call - Invoked by application in user mode.
• For example, application ask OS for system IO.
• Hardware Interrupts - Invoked by some hardware events in any mode.
• For example, hardware clock timer trigger event.
• Exception - Invoked when unexpected error or system malfunction occur.
• For example, execute privilege instructions in user mode.
Basics of Virtualization
• Privilege Instructions
• Example: Let’s consider X86 Architecture
• Kernel mode (Ring 0)
• CPU may perform any operation allowed by
its architecture, including any instruction
execution, IO operation, area of memory
access, and so on.
• Traditional OS kernel runs in Ring 0 mode.
• User mode (Ring 1 ~ 3)
• CPU can typically only execute a subset of
those available instructions in kernel mode.
• Traditional application runs in Ring 3 mode.
Basics of Virtualization
• Building Block: Trap and Emulate model
(VM Model)
• Dual mode CPU means guest OS executes in user mode.
• Kernel runs in kernel mode
• Not safe to let guest kernel run in kernel mode too.
• So, VM needs two modes– virtual user mode and
virtual kernel mode.
• Both of which run in real-user mode.
• How does the switch from virtual user mode to virtual
kernel mode occur?
• Attempting a privileged instruction in user mode
causes an error -> trap
• VMM gains control, analyzes error, executes
operation as attempted by guest
• Returns control to guest in user mode
• Known as trap-and-emulate
• Most virtualization products use this at least in part
Basics of Virtualization
• Building Block: Trap and Emulate model
(VM Model)
• User mode code in guest runs at same
speed as if not a guest
• But kernel mode privilege mode code
runs slower due to trap-and-emulate
• Especially a problem - when multiple
guests running, each needing trap-
and-emulate
• CPUs adding hardware support, made
CPU modes to improve virtualization
performance
Basics of Virtualization
• Building Block: Trap and Emulate model
Traditional OS :
• When application invoke a system call :
• CPU will trap to interrupt handler vector
in OS.
• CPU will switch to kernel mode (Ring 0)
and execute OS instructions.
• When hardware event :
• Hardware will interrupt CPU execution,
and jump to interrupt handler in OS.
Basics of Virtualization
• Building Block: Trap and Emulate model
• VMM and Guest OS :
• System Call
• CPU will trap to interrupt handler vector of VMM.
• VMM jump back into guest OS.
• Hardware Interrupt
• Hardware make CPU trap to interrupt handler of
VMM.
• VMM jump to corresponding interrupt handler of
guest OS.
• Privilege Instruction
• Running privilege instructions in guest OS will be
trapped to VMM for instruction emulation.
• After emulation, VMM jump back to guest OS.
Types of Virtualization
• Desktop Virtualization
• Platform Virtualization
• Full Virtualization
• Para Virtualization
• Hardware assisted Virtualization
• Hosted Virtualization
• Storage Virtualization
• Network Virtualization
• Server Virtualization
• OS-level Virtualization
• Application Virtualization
Types of Virtualization
Types of Virtualization
Terminologies
• Hypercalls & Binary Translation
• Hypercalls and binary translation are both techniques used in virtualization
• Binary Translation
• Binary translation is a form of recompilation that translates instruction sequences
from one set to another.
• In full virtualization, hypervisors use binary translation to translate OS instructions
on the fly and cache them for future use.
• This technique, combined with direct execution, allows the physical CPU to run non-
sensitive instructions at native speed, while user-level instructions run unmodified.
• Full virtualization offers better isolation and security for virtual machines (VMs) and
simplifies portability.
Types of Virtualization
Terminologies
• Hypercalls & Binary Translation
• Hypercalls and binary translation are both techniques used in virtualization
• Hypercalls
• A hypercall is a system call from a guest operating system (OS) to a hypervisor that
requests a service.
• The hypervisor then performs the requested task on behalf of the guest OS.
• Hypercalls are similar to kernel system calls and can be used to execute sensitive
CPU instructions.
• Para virtualization uses hypercalls instead of binary translation to communicate
with the hypervisor.
Types of Virtualization
• Desktop Virtualization
• Platform Virtualization
• Full Virtualization
• Para Virtualization
• Hardware assisted Virtualization
• Hosted Virtualization
• Storage Virtualization
• Network Virtualization
• Server Virtualization
• OS-level Virtualization
• Application Virtualization
Types of Virtualization

Desktop Virtualization
• Allows users to access their desktop virtually from any location or machine by
storing the OS on a server.
• This can make it easier to install, update, and patch applications.
• Also known as Virtual Desktop Infrastructure
(VDI), creates virtual desktops on a centralized
server accessible from any device with an internet
connection.
• It provides a secure, flexible, and scalable desktop
environment, reducing the need for costly
hardware upgrades and maintenance..
Types of Virtualization

Desktop Virtualization
• An end user may operate on many operating systems depending on their business
needs.
• The person can use desktop virtualization to work on an operating system other than
Windows.
• This gives the person the chance to work with two
distinct operating systems.
• Thus, desktop virtualization offers a wide range of
advantages, including user mobility, portability,
and simple software administration.
Types of Virtualization
• Desktop Virtualization
• Platform Virtualization
• Full Virtualization
• Para Virtualization
• Hardware assisted Virtualization
• Hosted Virtualization
• Storage Virtualization
• Network Virtualization
• Server Virtualization
• OS-level Virtualization
• Application Virtualization
Types of Virtualization

Platform Virtualization
• Platform virtualization refers to the creation of a virtual machine that acts like a real
computer with an operating system.
• Types:
• Full Virtualization (uses Binary Translation)
• Para Virtualization (uses Hypercalls)
• Hardware assisted Virtualization
• OS-level Virtualization
• Hosted Virtualization
Types of Virtualization
Platform Virtualization
• Type 1 Hypervisor
Full Virtualization • The hypervisor - completely simulates the
underlying hardware.
• The result is - all software (including all OS’s)
capable of execution on the raw hardware – can be
run in the VM.
• Comprehensively, simulate all computing elements
as instruction set, main memory, interrupts,
exceptions, and device assess.
• Full virtualization is only possible given the right
combination of hardware and software elements.
Types of Virtualization
Platform Virtualization
• In full virtualization, the guest OS is completely
Full Virtualization unaware that it’s being virtualized.
• It relies on binary translation to trap and to
virtualize the execution of certain sensitive, non
virtualizable instructions.
• Virtual machine simulates hardware to allow an
unmodified guest OS to be run in isolation
• The virtualization layer or VMM fully decouples the
guest OS from the underlying infrastructure
Types of Virtualization
Platform Virtualization
• Full Virtualization has proven successful
Full Virtualization • Sharing a computer system among multiple
users
• Isolating users from each other (and from the
control program)
• Emulating new hardware to achieve improved
reliability, security and productivity.
Types of Virtualization
Platform Virtualization
Full Virtualization
Types of Virtualization
Platform Virtualization
Full Virtualization
• Full virtualization uses a combination of
direct execution and binary translation.
• Enables hypervisors to run an unmodified
guest operating system (e.g. Windows 2003 or
XP).
• E.g.: VMware uses a combination of direct
execution and binary translation techniques to
achieve full virtualization of server systems.
Types of Virtualization
Platform Virtualization
Full Virtualization – How it works?
Binary Translation of Guest OS Requests Using a VMM
• This approach was implemented by VMware and many
other software companies.
• VMware puts the VMM at Ring 0 and the guest OS at Ring
1. The VMM scans the instruction stream and identified
the privileged, control- and behavior sensitive instructions.
• When these instructions are identified, they are trapped
into the VMM, which emulates the behavior of these
instructions.
• The method used in this emulation is called binary
translation. Therefore, full virtualization combines binary
translation and direct execution.
• Binary translation employs a code cache to store translated
hot instructions to improve performance, but it increases
the cost of memory usage.
Types of Virtualization
Platform Virtualization
Para Virtualization (OS assisted)
• Disadvantage of Full Virtualization: It is very difficult
to build more sophisticated binary translation
support.
• Para virtualization involves modifying the OS kernel
to replace non-virtualizable instructions with
hypercalls that communicates directly with the
virtualization layer hypervisor.
• The hypervisor also provides hypercall interfaces for
other critical kernel operations such as memory
management, interrupt handling, etc,
• Para Virtualization cannot support unmodified
Guest OS.
Types of Virtualization
Platform Virtualization
Para Virtualization (OS assisted)
• Type 1 Hypervisor
• Para-virtualization needs to modify the guest OS.
• Virtual guests are aware that it has been virtualized
• A para-virtualized VM provides special APIs requiring
substantial OS modifications in user applications.
• Improves performance.
• Reduces virtualization overhead.
• E.g.: Xen – a modified Linux Kernel and a version of
Windows XP.
Types of Virtualization
Platform Virtualization
Para Virtualization - Disadvantages
• As para virtualization cannot support unmodified OS (e.g. Windows 2000/XP), its
compatibility and portability are poor.
• The cost of maintaining para-virtualized OSes is high, because they may require
deep OS kernel modifications.
• The open-source Xen project is an example of para-virtualization that virtualizes the
processor and memory using a modified Linux kernel and virtualizes the I/O using
custom guest OS device drivers.
Types of Virtualization
Platform Virtualization
Para Virtualization - Advantages
• Modifying the guest OS to enable para virtualization is relatively easy while it is very
difficult to build the binary translation support necessary for full virtualization.
• Finally, the performance advantage of para-virtualization varies greatly due to
workload variations.
• Compared with full virtualization, para-virtualization is relatively easy and more
practical.
Types of Virtualization
Platform Virtualization

Full Virtualization
&
Para Virtualization
:
Type 1 Hypervisor
Platform VirtualizationTypes of Virtualization

Full Virtualization
&
Para Virtualization
:
Type 1 Hypervisor
Types of Virtualization
Platform Virtualization
Hardware assisted Virtualization
Types of Virtualization
Platform Virtualization
Host based Virtualization • Type 2 Hypervisor
• In a host-based system, both host OS and guest OS
are used.
• A virtualization software layer is built between the
host OS and guest OS.
• To install a virtualization layer on top of the host
OS.
• Guest OS - installed and run on top of the
virtualization layer.
• Host OS - responsible for managing the hardware.
• Dedicated applications may run on the VMs.
• Other applications can also run with the host OS
directly.
Types of Virtualization
• Desktop Virtualization
• Platform Virtualization
• Full Virtualization
• Para Virtualization
• Hardware assisted Virtualization
• Hosted Virtualization
• Storage Virtualization
• Network Virtualization
• Server Virtualization
• OS-level Virtualization
• Application Virtualization
Types of Virtualization

Storage Virtualization
• Storage virtualization establishes a virtual layer of abstraction between physical storage
resources and the applications utilizing them.
• It allows for more efficient allocation and management of storage resources, minimizing
the need for expensive hardware upgrades and maintenance.
• Abstracts and separates the logical view of storage from its physical implementation.

• This allows multiple storage devices from different


vendors to be pooled together and managed.
• Storage virtualization can make it easier to transfer data
and files, and can help with centralized management.
Types of Virtualization

Storage Virtualization
Types:
• Block Storage Virtualization – This type of Storage Virtualization takes over at the disk level once it
has replaced the controllers. Technically it is in function before the file system comes into picture.
• File Storage Virtualization – It is essential for a server which uses the storage to have the software
installed on it in case it wants to enable the usage on the file system level.

Benefits:
• In today’s heterogeneous IT environment, it offers the scope of
an improved storage management system.
• It brings along with it a better storage utilization system.
• It essentially reduces the downtime of the server owing to the
good capacity that it has.
• It is easy to update.
Types of Virtualization
• Desktop Virtualization
• Platform Virtualization
• Full Virtualization
• Para Virtualization
• Hardware assisted Virtualization
• Hosted Virtualization
• Storage Virtualization
• Network Virtualization
• Server Virtualization
• OS-level Virtualization
• Application Virtualization
Types of Virtualization
Network Virtualization
• Creates multiple virtual networks on a single physical network infrastructure. Each
virtual network operates independently with its own policies and configurations.
• Network virtualization offers increased network agility, improved security, and reduced
costs.
• Virtualizes a network into a sub network that can be created on the same physical
network. This allows multiple virtual networks to run at the same time, each with its own
control system and data plan.
Types:
• Internal Network Virtualization : extends network-like
functionality to a single system.
• External Network Virtualization : Combines multiple
networks or its individual parts into a single virtual unit.
Types of Virtualization
• Desktop Virtualization
• Platform Virtualization
• Full Virtualization
• Para Virtualization
• Hardware assisted Virtualization
• Hosted Virtualization
• Storage Virtualization
• Network Virtualization
• Server Virtualization
• OS-level Virtualization
• Application Virtualization
Types of Virtualization

Server Virtualization
• Allowing a server's resources to be shared among multiple virtual machines (VMs).
• Divides servers into individual systems and allows them to act independently.
• Multiple virtual instances of an operating system run on a single physical server.
• Each instance is isolated and has dedicated resources like CPU, memory, storage, and
network interfaces.
• Server virtualization enhances resource utilization,
improves efficiency, and reduces costs.
• Allows an organization to separate server software
from its hardware and create multiple virtual servers
with their own operating systems and applications on
a single physical server.
Types of Virtualization

Server Virtualization - Benefits


• Cost-effective : Enterprises can use server virtualization to save power and implement cost-effective data centers.
• Flexible : Virtual servers can be easily increased, updated, or moved as needed.
• Business continuity : Remote access to servers can help ensure that the operating system doesn't fail.
• Cloud services : Server virtualization can open up businesses to more cloud services that can enhance network
capabilities.

Server Virtualization - Disadvantages


• Server offline: If the server goes offline, all websites hosted by it will cease to exist.
• RAM consumption: Virtualized environments can consume a significant amount of RAM.
• Setup and maintenance: Setting up and maintaining virtualized environments can be challenging.
• Database and app support: Virtualization isn't supported for many essential databases and apps.
• Risk and availability: Running multiple workloads on the same physical computer can carry risks for the organization.
• Resource shortages: Virtualization can make it possible to exceed normal server resource utilization, especially in
memory and networking.
• Licensing: Software costs money in procurement and licensing, which can be easily overlooked.
Types of Virtualization
Server Virtualization
OS Level Virtualization
• Type of Server Virtualization
• Does not use a Hypervisor – Host OS performs all the functionalities of a Hypervisor.
• partitions the operating system to create multiple isolated Virtual Machines (VM).
• An OS-level VM is a virtual execution environment that can be forked instantly from the
base operating environment.
• OS-level virtualization has been widely used to improve security,
manageability and availability of today’s complex software
environment, with small runtime and resource overhead, and
with minimal changes to the existing computing infrastructure.
Types of Virtualization
Server Virtualization
OS Level Virtualization
Types of Virtualization
• Desktop Virtualization
• Platform Virtualization
• Full Virtualization
• Para Virtualization
• Hardware assisted Virtualization
• Hosted Virtualization
• Storage Virtualization
• Network Virtualization
• Server Virtualization
• OS-level Virtualization
• Application Virtualization
Types of Virtualization

Application Virtualization
• A technique that allows you to run software applications without installing them on the
underlying operating system or hardware.
• It can help you reduce costs, improve performance, enhance security, and simplify
management of your cloud applications.
• Involves packaging an application and its dependencies
into a single package that can run on any operating
system or device without the need for installation or
modification.
• This enables organizations to deploy applications quickly
and easily, eliminating extensive testing or modification
requirements.
Types of Virtualization

Memory Virtualization
Pros & Cons of Virtualization

Pros:
• Users can access data without worrying about where it is being stored in memory.
• Simple and fast deployment of resources
• By eliminating data replication, costs are reduced.
• Provision of various security features.
Cons:
• There are availability issues as third-party providers maintain availability.
• Implementation of Virtualization is quite expensive.
• It offers a security risk to sensitive data if the transfer procedure is not managed
methodically.
Issues in Virtualization for Cloud Computing

Virtualization is technology
that you can use to create
virtual representations of
servers, storage, networks, and
other physical machines.
Virtualization Vs Cloud Computing
Cloud Computing Virtualization
In cloud computing, resources are Virtualization is the establishment of
used in centralized pattern and cloud cloud computing.
computing is a high accessible service.
Cloud computing is used to provide While It is used to make various
resources and automated resources simulated environments through a
that can be accessed on demand. physical hardware system.
Cloud computing requires many While single dedicated hardware can
dedicated hardware. do a great job in it.

While storage space depends on


Cloud computing provides unlimited
physical server capacity in
storage space.
virtualization.

6
Virtualization Vs Cloud Computing
Cloud Computing Virtualization
Cloud computing is high scalable. While virtualization is low scalable
compared to cloud computing.
Cloud computing is Very flexible. While virtualization is less flexible
than cloud computing.
In Virtualization, the pricing is
In cloud computing, the pricing pay
totally dependent on infrastructure
as you go model.
costs.

6
Benefits of Virtualization
Software – Defined Data Center (SDDC)
Key Points
SDDCs
Key components
Benefits of SDDCs
SDDC vendors
How to switch to an SDDC
What is an SDDC?
• A software-defined data center is an IT-as-a-Service (ITaaS)
platform that services an organization’s software,
infrastructure, or platform needs.
• An SDDC can be housed on-premise, at an MSP, and in private,
public, or hosted clouds.
• For our purposes: host servers, storage devices, network
equipment, and security devices
What is an SDDC?
• Unlike traditional data centers, an SDDC uses a virtualized
environment to deliver a programmatic approach to the
functions of a traditional data center.
• Like server virtualization concepts used for years, SDDCs
abstract, pool, and virtualize all data center services and
resources in order to:

• Reduce costs
• Increase scalability
• Improve business agility
SDDC Architectural Components
Compute
virtualization
Network
virtualization
Storage
virtualization
Management and
automation
software
SDDC Architectural Components
• Compute virtualization
• Compute virtualization, where virtual machines (VMs)
including their operating systems, CPUs, memory, and
software reside on cloud servers.

• Compute virtualization allows users to create software


implementations of computers that can be spun up or spun
down as needed, decreasing provisioning time.
SDDC Architectural Components
• Network virtualization
• Network virtualization, where the network infrastructure
servicing your VMs can be provisioned without worrying
about the underlying hardware.
• Network infrastructure needs telecommunications, firewalls,
subnets, routing, administration, DNS, etc. are configured
inside your cloud SDDC on the vendor’s abstracted
hardware.
• No network hardware assembly is required.
SDDC Architectural Components
• Storage virtualization
• Storage virtualization, where disk storage is provisioned
from the SDDC vendor’s storage pool.
• You get to choose your storage types, based on your needs
and costs.
• You can quickly add storage to a VM when needed.
SDDC Architectural Components
• Management and automation software
• SDDCs use management and automation software to keep
business critical functions working around the clock,
reducing the need for IT manpower.
• Remote management and automation is delivered via a
software platform accessible from any suitable location, via
APIs or Web browser access.
Benefits of SDDC
• Business agility
• An SDDC offers several benefits that improve business agility with a
focus on three key areas:
• Balance
• Flexibility
• Adaptability
• Reduced cost
• In general, it costs less to operate an SDDC than housing data in
brick-and-mortar data centers. Traditional data centers must charge
more to cover the cost of:
• Round-the-clock employees
• Security
• Operational needs like building leases and hardware
Benefits of SDDC
• Increased scalability
• By design, cloud SDDCs can easily expand along with your business.
• Increasing your storage space or adding functions is usually as easy as
contacting the data facility to get a revised monthly service quote.
• This is a significant advantage over brick-and-mortar data centers,
which scale only by making more room for additional servers,
purchasing hardware and software, and bringing in manpower to make
the transition. This clearly costs more and takes more time.
• The appeal of outsourced data centers has always been that they ease
the burden off your company’s shoulders, leaving your in-house IT team
to focus on strategy.
• But SDDCs take this benefit a step further, offering potentially unlimited
scalability
SDDC Vendors
• SDDC hardware and services are sold by many different vendors,
including:
• Dell/VMware
• Hewlett Packard Enterprise
• Microsoft
• Amazon
• Oracle
• Citrix
• IBM
• Business partners who help create and configure custom SDDCs
How to move to an SDDC?
• Pay attention to timing:
• Many organizations start utilizing SDDCs by migrating their Microsoft
Exchange servers to Microsoft Azure servers, retaining their ability to
control their Exchange setup while Microsoft’s SDDC handles the
infrastructure setup.
• Other SDDC migration candidates might include file and print servers and
other special purpose servers that do not need to run in an organizational
data center.
• Ultimately, CIOs and CTOs should implement a basic infrastructure of
software that can link with an SDDC.
Plan Ahead
If your organization has not aligned the above requisites, now may not
be the best time to make the switch. Instead, start with these actions:
• Prepare your basic software infrastructure
• Bolster your DevOps team
• Pay attention to timing
CTOs should keep their focus on a long-term goal where they
ultimately convert to an SDDC by the mid-2030s.

You might also like