Upload
frederick-megginson
View
215
Download
1
Tags:
Embed Size (px)
Citation preview
Virtual Machine Technology
Dr. Gregor von Laszewski
Dr. Lizhe Wang
Virtual machine concept
Host resource
VM VM VM
VMM
Why virtual machine?
Support multiple users On-demand computing environment creation &
customization QoS guaranteed & performance isolation High availability Easy management Access “root” privilege …
CPU virtualization
Full virtualization OS Assisted Virtualization or Paravirtualization Hardware Assisted Virtualization
X86 architecture
Full Virtualization using Binary Translation
Paravirtualization(OS Assisted Virtualization)
Hardware Assisted Virtualization
Memory virtualization
Device and I/O Virtualization
Full virtualization: VMware workstation
Special container for the VMVirtual CPUs, memory, hard disk, network interfaces, USB ports and other common hardware components.
VMM is executed as an application of the host OS
Limited performance of the VMs VM becomes independent from
host configuration Can be used on different host
systems VM is stored and runs in files VMs contain native OS and are
completely isolated
Full virtualization: VMware ESX server
Hypervisor directly running on the server
Requires supported hardware components
Special optimized pass-through drivers for dedicated hardware components
Better performance Advanced management tools
available Near-native performance of the
guest OS Optimized for server
consolidation
Paravirtualization: Xen
Different hardware components not fully emulated.
It only organizes the usages->near-native performance
Layout of a Xen based system: Privileged host system(Dom0) and unprivileged guest systems (DomU)
DomU are working cooperatively Guest and host OS has to be adapted to XEN
(Kernel-Patch), but not the applications
Paravirtualization: Xen
Application scenario: a Grid cluster (1)
Application scenario: a Grid cluster (2)
for reasons of stability,different services like LDAP, the grid portals, should run on different machines
varying load on the different machines– Resources not fully exploited– “recycling” of older machines leads to a heterogeneous
hardware structure high administrative effort for installation and
maintenance of the system Virtualization of these machines leads to few
machines to be maintained and to homogenous OS installations
Application scenario: a Grid cluster (3)
but what happens if the host machine dies? Failure of: disks, motherboard, memory,
power supply, …– All services which are hosted on this machine will
be down until machine is restored or access to VM images possible
Need concepts of high availability and QoS for such scenarios where several services are hosted on one physical host
Application scenario: a Grid cluster (4)
Application scenario: a Grid cluster (5)
Storage of the VM file system in a high available and redundant SAN
Use host systems with redundant LAN, SAN and power connections
Migration on the fly in case of hardware problems or maintenance of one server
If insufficient resources are available on the other server, the service level of less critical services can be reduced for short times.
Automated tools for load balancing and migration in case of failures exist, e.g. for the VMware ESX server.
All services can be offered without or with only short interruption, perhaps at lower service level
Libvirt: The virtualization API
libvirt is:– A toolkit to interact with the virtualization capabilities of different Linux – Free software– C API – A set of bindings for common languages – CIM provider for the DMTF virtualization schema
libvirt supports:– Xen, QEMU, KVM, LXC, OpenVZ – Storage on IDE/SCSI/USB disks, FibreChannel, LVM, iSCSI, NFS and
filesystems libvirt provides:
– Remote management using TLS encryption and x509 certificates– Remote management authenticating with Kerberos and SASL– Local access control using PolicyKit– Zero-conf discovery using Avahi multicast-DNS– Management of virtual machines, virtual networks and storage