Cloud Computing Lecture 5-6 Muhammad Ahmad Jan Lecture Outline
Why Virtualization Virtualization
Hypervisor and its types Types of virtualization Virtualization
Products Example Problem Enterprise IT centers support many service
applications
Microsoft Exchange Oracle SAP Web servers Each service application
demands its own environment Specific version of operating system
Multiple processors and disks Specialized configurations Combining
services on same server host is difficult (at best) Conflicting
demands Incompatible loads . Problem Adding or upgrading hardware
or OS is difficult
Testing and refitting active service Complicated changeover tactics
Load balancing is impossible Services tied to own systems Some
underused, some overused Modest Example Approx 20 difference
services Approx 20 server systems
multiple processors > 100 gigabytes of RAM ~ 20 terabytes of
disk storage Multiple operating systems Solution -
Virtualization
Decouple [OS, service] pair from hardware Multiplex lightly-used
services on common host hardware Migrate services from host to host
as needed Introduce new [OS, service] pairs as needed Commissioning
new services Testing upgrades of existing services Experimental
usage Virtualization 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 Benefits of Virtualization
Sharing of resources helps cost reduction 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 underlying hardware Portability: Virtual machines
can be migrated between different hosts. Virtualization in Cloud
Computing
Cloud computing takes virtualization one step further: You dont
need to own the hardware Resources are rented as needed from a
cloud Various providers allow creating virtual servers: Choose the
OS and software each instance will have The chosen OS will run on a
large server farm Can instantiate more virtual servers or shut down
existing ones within minutes You get billed only for what you used
Hypervisor The hypervisor (also called a virtual machine monitor)
is the low-level program that allows multiple operating systems to
run concurrently on a single host computer. Hypervisors use a thin
layer of code in software or firmware to allocate resources in
real-time. Its just like a traffic cop that controls I/O and memory
management. Hypervisor can perform VM creation, Resource allocation
(CPU, memory, Disks), VM migration and destruction etc. Type 1
Hypervisor Type 1 hypervisors run directly on the system hardware.
They are often referred to as a "native" or "bare metal" or
"embedded" hypervisors. Type 2 Hypervisor Type 2 hypervisors run on
a host operating system. When the virtualization movement first
began to take off, Type 2 hypervisors weremost popular.
Administrators could buy the software and install it on a server
they already had. Two Approaches Difference b/w Type 1 and Type 2
hypervisors
Type 1 hypervisors are gaining popularity because building the
hypervisor into the firmware is proving to be more efficient.
According to IBM, Type 1 hypervisors provide higher performance,
availability, and security than Type 2 hypervisors. IBM recommends
that Type 2 hypervisors be used mainly on client systems where
efficiency is less critical or on systems where support for a broad
range of I/O devices is important and can be provided by the host
operating system. Experts Prediction Experts predict that shipping
hypervisors on bare metal will impact how organizations purchase
servers in the future. Instead of selecting an OS, they will simply
have to order a server with an embedded hypervisor and run whatever
OS they want. Virtualization - Basic Terminologies
Host MachinePhysical machine that hosts one or more virtual
machines. Virtual Machine (Guest VM) A self-contained software
emulation of a machine, which does not physically exist, but shares
resources of an underlying physical machine. VM Cluster A
collection of VM Hosts that act as a single large host. If one of
the hosts are removed, all of the VMs that the host was running
seamlessly continue running on the other hosts. A true VM cluster
requires shared storage such as a SAN/NAS device. P2V (Physical to
Virtual) Refers to the process of migrating operating systems,
applications and data from the hard disk of a physical server to a
virtual machine. Virtualization - Basic Terminologies
VM Snapshot Preserves the state and data of a virtual machine at a
given point in time, allowing for recovery at a single point in
time for a VM. Snapshots areNOTa way to do backups, but part of the
technology used to create snapshots are used by backup software to
do backups correctly. VM Backup Virtual machine backup can be
performed multiple different ways depending on the backup software
and the type of hypervisor that the VM guest resides on. Thebackup
softwareguards against data loss and can be used to recover files
in the event of hardware failure or other disaster. VM Replication
The ability to replicate virtual machines at the server
virtualization level using replication software. Provides
redundancy for quick VM recovery and reduced downtime in the event
of failure or disaster. Attributes of All Virtual Machines
Software Compatibility Provides compatible abstraction so all
software written for the machine that VM is virtualizing will run
in it . Java Write once Run anywhere Isolation All software running
on the VM is contained within it and cant affect other VMs or
processes. Performance Any new software layer adds overhead to the
system. Types of Virtualization
Server Virtualization Application Virtualization Network
Virtualization Storage Virtualization Desktop Virtualization
Virtual Desktop Infrastructure (VDI) Server Virtualization
Partitioning of a physical server into smaller virtual servers in
order to better utilize server resources. Application
Virtualization
The separation of the installation of an application from the
underlying operating system on which it is executed. Application
virtualization is layered on top of other virtualization
technologies, allowing computing resources to be distributed
dynamically in real-time. Network Virtualization
The process of combining hardware and software network resources to
create a single pool of resources that make up a virtual network
that can be accessed without regard to the physical component.
Storage Virtualization
The process of consolidating the physical storage from multiple
network storage devices so that it appears to be a single storage
unit. Desktop Virtualization
The process of virtualizing desktop computers using virtualization
software, such that the desktop computer and the associated
operating system and applications are separated from the physical
client device that is used to access it. Virtual Desktop
Infrastructure (VDI)
The practice of hosting a desktop environment within a virtual
machine that runs on a centralized or remote server. Products For
the Enterprise For the end user
VMware ESX/vSphere, Virtual Center Microsoft HyperV For the end
user VMware Player, Server Oracle Virtualbox QEmu (Quick Emulator)
Microsoft Virtual PC Finally, there are other products besides
these and many more to appear especially with the explosion of
cloud computing Example VirtualBox (Step-1) Example VirtualBox
(Step-2) Example VirtualBox (Step-3) Creating VM Step 1 Creating VM
Step 2 Creating VM Step 3 Creating VM Step 4 Creating VM Step 5 The
End