Date post: | 05-Apr-2018 |
Category: |
Documents |
Upload: | ashkan-ilchi |
View: | 220 times |
Download: | 0 times |
of 44
7/31/2019 Virtualization Technologies - P. Riteau
1/44
What is virtualization?System-level Virtualization
Advanced Virtualization MechanismsSummary
An Overview of Virtualization Technologies
Pierre Riteau
University of Rennes 1, IRISAINRIA Rennes - Bretagne Atlantique
June 29, 2011 / Contrail Summer School 2011
Pierre Riteau An Overview of Virtualization Technologies 1/44
http://find/7/31/2019 Virtualization Technologies - P. Riteau
2/44
What is virtualization?System-level Virtualization
Advanced Virtualization MechanismsSummary
Introduction
Virtualization
???
Pierre Riteau An Overview of Virtualization Technologies 2/44
http://find/7/31/2019 Virtualization Technologies - P. Riteau
3/44
What is virtualization?System-level Virtualization
Advanced Virtualization MechanismsSummary
Outline
1 What is virtualization?Concept of VirtualizationDifferent Types of Virtualization
2 System-level Virtualization
3 Advanced Virtualization Mechanisms
Live MigrationMemory ManagementSnapshots
Pierre Riteau An Overview of Virtualization Technologies 3/44
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
4/44
What is virtualization?System-level Virtualization
Advanced Virtualization MechanismsSummary
Concept of VirtualizationDifferent Types of Virtualization
Outline
1 What is virtualization?Concept of VirtualizationDifferent Types of Virtualization
2 System-level Virtualization
3 Advanced Virtualization Mechanisms
Live MigrationMemory ManagementSnapshots
Pierre Riteau An Overview of Virtualization Technologies 4/44
Wh i i li i ?
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
5/44
What is virtualization?System-level Virtualization
Advanced Virtualization MechanismsSummary
Concept of VirtualizationDifferent Types of Virtualization
Virtualization vs Abstraction
Virtualization is abstraction.
Pierre Riteau An Overview of Virtualization Technologies 5/44
Wh t i i t li ti ?
http://find/7/31/2019 Virtualization Technologies - P. Riteau
6/44
What is virtualization?System-level Virtualization
Advanced Virtualization MechanismsSummary
Concept of VirtualizationDifferent Types of Virtualization
Virtualization vs Abstraction
Virtualization is abstraction.
Pierre Riteau An Overview of Virtualization Technologies 6/44
What is virtualization?
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
7/44
What is virtualization?System-level Virtualization
Advanced Virtualization MechanismsSummary
Concept of VirtualizationDifferent Types of Virtualization
Abstraction
Abstraction Offer a simplified interface
Computing systems organized as layers ofabstraction each layer helps to simplify the system
Example of abstractions
A file is an abstraction of disk storage
A TCP stream is an abstraction of network packets. . . which are abstraction of electrical signals
Pierre Riteau An Overview of Virtualization Technologies 7/44
What is virtualization?
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
8/44
What is virtualization?System-level Virtualization
Advanced Virtualization MechanismsSummary
Concept of VirtualizationDifferent Types of Virtualization
Virtualization
Virtualization Offer a different interface
Virtualized interface is not necessarily simplerCan be applied to many types of resources
Compute (CPU)Storage (disk)Network
Concept of virtual machine
Pierre Riteau An Overview of Virtualization Technologies 8/44
What is virtualization?
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
9/44
What is virtualization?System-level Virtualization
Advanced Virtualization MechanismsSummary
Concept of VirtualizationDifferent Types of Virtualization
Different Types of Virtualization
System-level virtualizationProcess-level Virtualization
OS Virtualization
Pierre Riteau An Overview of Virtualization Technologies 9/44
What is virtualization?
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
10/44
What is virtualization?System-level Virtualization
Advanced Virtualization MechanismsSummary
Concept of VirtualizationDifferent Types of Virtualization
System-level Virtualization
Emulates a computer similar to a real physical one
With CPU(s), memory, disk(s), network interface(s), etc.
The virtual machine runs a full OS
Full Virtualization vs Paravirtualization
Examples: VMware, Xen, KVM
Pierre Riteau An Overview of Virtualization Technologies 10/44
What is virtualization?
http://find/7/31/2019 Virtualization Technologies - P. Riteau
11/44
System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Concept of VirtualizationDifferent Types of Virtualization
System-level Virtualization
Physical node
Kernel Kernel Kernel
Userland Userland Userland
Pierre Riteau An Overview of Virtualization Technologies 11/44
What is virtualization?
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
12/44
System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Concept of VirtualizationDifferent Types of Virtualization
Process-level Virtualization
The virtual machine runs one application (one process)
Application has to be written specifically for the VM
Usually implemented on top of an operating systemExample: Java Virtual Machine
Advantage
Application is portable among all platforms supporting the VM JVM on Windows, Linux, OS X, PDAs, phones . . .
Disadvantage
Legacy applications have to be rewritten for the VM
Pierre Riteau An Overview of Virtualization Technologies 12/44
What is virtualization?
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
13/44
System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Concept of VirtualizationDifferent Types of Virtualization
Process-level Virtualization
Physical node
OS
utilities
Kernel
ProcessVM
App
ProcessVM
App
Pierre Riteau An Overview of Virtualization Technologies 13/44
What is virtualization?S C f
http://find/7/31/2019 Virtualization Technologies - P. Riteau
14/44
System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Concept of VirtualizationDifferent Types of Virtualization
OS Virtualization
The virtual machine runs a set of userland processes
Userland domains are separated
Kernel is the same for all userland domains
Example: OpenVZ, Solaris zones, FreeBSD jails
Pierre Riteau An Overview of Virtualization Technologies 14/44
What is virtualization?S l l Vi li i C f Vi li i
http://find/7/31/2019 Virtualization Technologies - P. Riteau
15/44
System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Concept of VirtualizationDifferent Types of Virtualization
OS Virtualization
Physical node
Userland Userland
Kernel
Userland
Pierre Riteau An Overview of Virtualization Technologies 15/44
What is virtualization?S st l l Vi t li ti
http://find/7/31/2019 Virtualization Technologies - P. Riteau
16/44
System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Outline
1 What is virtualization?Concept of VirtualizationDifferent Types of Virtualization
2 System-level Virtualization
3 Advanced Virtualization Mechanisms
Live MigrationMemory ManagementSnapshots
Pierre Riteau An Overview of Virtualization Technologies 16/44
What is virtualization?System level Virtualization
http://find/7/31/2019 Virtualization Technologies - P. Riteau
17/44
System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
System-level Virtualization
Virtual machines are managed by another software layer
Hypervisor / Virtual Machine Manager (VMM)Can be of two different types
Type 1: native, runs directly on hardwareType 2: hosted on top of another operating system Host OS
Pierre Riteau An Overview of Virtualization Technologies 17/44
What is virtualization?System-level Virtualization
http://find/7/31/2019 Virtualization Technologies - P. Riteau
18/44
System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Type 1 Hypervisor
Hardware
Type 1 Hypervisor
Privilegeddomain Guest domains
Privileged
OS
GuestOS
GuestOS
Userland Userland Userland
Pierre Riteau An Overview of Virtualization Technologies 18/44
What is virtualization?System-level Virtualization
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
19/44
System level VirtualizationAdvanced Virtualization Mechanisms
Summary
Type 2 Hypervisor
Hardware
Host OS
Userland
Guest domains
GuestOS
GuestOS
Userland Userland
Type 2 Hypervisor
Pierre Riteau An Overview of Virtualization Technologies 19/44
What is virtualization?System-level Virtualization
http://find/7/31/2019 Virtualization Technologies - P. Riteau
20/44
System level VirtualizationAdvanced Virtualization Mechanisms
Summary
Full Virtualization
Full Virtualization Run an OS without modification
Initiated by IBM in 1967 with the CP-40 system
Run natively most processor instructions
Trap and emulate privileged instructions (I/O access, systemCPU registers, . . . )
Example
Virtual machine application runs a ADD instruction
runs directly on processor without hypervisor being involvedVirtual machine kernel reads the current system level trapped by hypervisor and emulated to show a fake value
Pierre Riteau An Overview of Virtualization Technologies 20/44
What is virtualization?System-level Virtualization
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
21/44
yAdvanced Virtualization Mechanisms
Summary
Paravirtualization
Modify the guest OS to improve performance
Make the guest OS aware that it is being virtualized
Modify privileged instructions in the guest OS to avoid trapsReplace by an interaction between the guest OS and thehypervisor interface
Examples
Disco (Stanford University, 1997)Xen (University of Cambridge, 2003)
Pierre Riteau An Overview of Virtualization Technologies 21/44
What is virtualization?System-level Virtualization
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
22/44
Advanced Virtualization MechanismsSummary
Paravirtualized drivers
Keep the guest OS unmodified . . .
. . . but write drivers that know the system is virtualized
Emulation of a real device simple virtual deviceExamples
virtio in KVM for Linux guestsVMware Tools for Windows/Linux guests
Used for I/O devices requiring high performance
Network I/ODisk I/O
Pierre Riteau An Overview of Virtualization Technologies 22/44
What is virtualization?System-level Virtualization
http://find/7/31/2019 Virtualization Technologies - P. Riteau
23/44
Advanced Virtualization MechanismsSummary
Problems with virtualizing the Intel x86
Classical x86 architecture is not virtualizable
Some privileged instructions dont generate traps
sensitive instructionsConcept of ring levels
Normal system
OS runs in ring 0
applications in ring 3
Virtualized settinghypervisor runs in ring 0
guest OS in ring 3
Pierre Riteau An Overview of Virtualization Technologies 23/44
What is virtualization?System-level Virtualization
Ad d Vi li i M h i
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
24/44
Advanced Virtualization MechanismsSummary
How to virtualize the Intel x86
Binary translation recompilation of code
hypervisor analyzes guest code and replaces itwith emulated code
Paravirtualization
Hardware support
creates ring -1 for hypervisor
guest OS can run in ring 0AMD-V & VT-x
Pierre Riteau An Overview of Virtualization Technologies 24/44
What is virtualization?System-level Virtualization
Ad d Vi t li ti M h i
Live MigrationMemory Management
http://find/7/31/2019 Virtualization Technologies - P. Riteau
25/44
Advanced Virtualization MechanismsSummary
y gSnapshots
Outline
1 What is virtualization?Concept of VirtualizationDifferent Types of Virtualization
2 System-level Virtualization
3 Advanced Virtualization MechanismsLive MigrationMemory ManagementSnapshots
Pierre Riteau An Overview of Virtualization Technologies 25/44
What is virtualization?System-level Virtualization
Advanced Virtualization Mechanisms
Live MigrationMemory Management
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
26/44
Advanced Virtualization MechanismsSummary
y gSnapshots
Live Migration of Processes
Migration of processes has long been researched
Offers many advantages
Load balancingPower efficiencyTransparent infrastructure maintenance
Problems
Complex implementations required to migrate all system
resourcesResidual dependencies
Pierre Riteau An Overview of Virtualization Technologies 26/44
What is virtualization?System-level Virtualization
Advanced Virtualization Mechanisms
Live MigrationMemory Management
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
27/44
Advanced Virtualization MechanismsSummary
Snapshots
Live Migration of Virtual Machines
Virtual machines provide complete encapsulation ofApplicationsLibrariesOperating system
Possible to serialize the state of a VM between physical hosts
Source Host Destination Host
VM VM
Live Migration
Pierre Riteau An Overview of Virtualization Technologies 27/44
What is virtualization?System-level Virtualization
Advanced Virtualization Mechanisms
Live MigrationMemory ManagementS
http://find/7/31/2019 Virtualization Technologies - P. Riteau
28/44
Advanced Virtualization MechanismsSummary
Snapshots
Live Migration of VMs in LANs
Transfer VM state from source host to destination host
VM state
Processor state (CPU registers)Device state (hardware registers)Memory content
What about storage and network resources?
Shared storage (e.g. NFS) no migration needed
Network traffic redirected with gratuitous ARP/RARP frames
Pierre Riteau An Overview of Virtualization Technologies 28/44
What is virtualization?System-level Virtualization
Advanced Virtualization Mechanisms
Live MigrationMemory ManagementS h
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
29/44
Advanced Virtualization MechanismsSummary
Snapshots
Live Migration of Virtual Machines
Source Host Destination Host
VM VMLive Migration
Shared FS Server
VM disk
ARP/RARP frame
Pierre Riteau An Overview of Virtualization Technologies 29/44
What is virtualization?System-level Virtualization
Advanced Virtualization Mechanisms
Live MigrationMemory ManagementS h t
http://find/7/31/2019 Virtualization Technologies - P. Riteau
30/44
SummarySnapshots
Pre-Copy Live Migration
Traditional method used for migration of processes
Iterative process
Copy all memory content to the destination host(while the VM continues running)Do multiples iterations to copy modified memory pages duringthe previous periodWhen enough iterations have been done, stop the VM and
Copy the remaining modified memory pages
Copy the CPU and device state
Resume VM on destination host
Pierre Riteau An Overview of Virtualization Technologies 30/44
What is virtualization?System-level Virtualization
Advanced Virtualization Mechanisms
Live MigrationMemory ManagementSnapshots
http://find/7/31/2019 Virtualization Technologies - P. Riteau
31/44
SummarySnapshots
Post-Copy Live Migration
Pre-copy: can present long downtime in the last phase
if the application modifies a large working setif the available bandwidth is low
Post-copy algorithmStart by copying CPU and device stateResume VM execution on the destination hostFetch memory on demand when accessed
Reduces downtime over pre-copyCan lower performance because of memory access latency
Pierre Riteau An Overview of Virtualization Technologies 31/44
What is virtualization?System-level Virtualization
Advanced Virtualization Mechanisms
Live MigrationMemory ManagementSnapshots
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
32/44
SummarySnapshots
Trace & Replay Live Migration
Use pre-copy as the basic migration algorithm
Instead of sending modified memory pages send external
events of the VM to replay the modificationse.g., network packet received modify network card registers
Greatly reduces amount of data to send between hosts
Problem: not working for SMP VMs as CPU synchronization
would be too costly
Pierre Riteau An Overview of Virtualization Technologies 32/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
S
Live MigrationMemory ManagementSnapshots
http://find/7/31/2019 Virtualization Technologies - P. Riteau
33/44
SummarySnapshots
Live Migration over Wide Area Networks
Live migration between differentinfrastructures/data centers/clouds
Source Host Destination Host
VM VMLive Migration
Shared FS Server
VM disk
Internet
x
Pierre Riteau An Overview of Virtualization Technologies 33/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
S
Live MigrationMemory ManagementSnapshots
http://find/7/31/2019 Virtualization Technologies - P. Riteau
34/44
SummarySnapshots
Live Migration of Storage
Need to replicate data to the destination infrastructure
Mechanism similar to pre-copy live migrationCopy the whole disk content
Iteratively synchronize changes
Examples: KVM migration, DRBD
Pierre Riteau An Overview of Virtualization Technologies 34/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
S mmar
Live MigrationMemory ManagementSnapshots
http://find/7/31/2019 Virtualization Technologies - P. Riteau
35/44
Summaryp
Network Support for Live Migration
Not possible to redirect traffic with ARP/RARP frames
between different IP networks
Solutions based on encapsulating traffic in a tunnel over WAN
Or Mobile IPv6 mechanisms
Pierre Riteau An Overview of Virtualization Technologies 35/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Live MigrationMemory ManagementSnapshots
http://find/7/31/2019 Virtualization Technologies - P. Riteau
36/44
Summary
Live Migration Optimizations
Objective: Minimize downtime
Means: Reduce amount of data to sendSeveral approaches
Data CompressionPage Delta TransferData Deduplication
Pierre Riteau An Overview of Virtualization Technologies 36/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Live MigrationMemory ManagementSnapshots
http://find/7/31/2019 Virtualization Technologies - P. Riteau
37/44
Summary
Data Compression
Compress memory pages sent over the network
Trivial approach: compress zerod memory pages
General approach: use regular compression (gzip)
More complicated: adaptive memory compression
Pierre Riteau An Overview of Virtualization Technologies 37/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Live MigrationMemory ManagementSnapshots
http://find/7/31/2019 Virtualization Technologies - P. Riteau
38/44
Summary
Page Delta Transfer
Memory pages are 4 KB on x86
Modify 1 byte in the page transfer 4 KBDelta transfer mechanism:
Keep copy of original pageComputer differences between original and new pageSend diff instead of full content
Pierre Riteau An Overview of Virtualization Technologies 38/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Live MigrationMemory ManagementSnapshots
http://find/7/31/2019 Virtualization Technologies - P. Riteau
39/44
Su a y
Data Deduplication
VMs can contain identical data in multiple memory pages
Deduplication retains only one unique copy of each memorypage
Duplicate detection based on fast hash algorithm + full datacomparison in case of match
Pierre Riteau An Overview of Virtualization Technologies 39/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Live MigrationMemory ManagementSnapshots
http://find/http://goback/7/31/2019 Virtualization Technologies - P. Riteau
40/44
y
Memory Management
Virtualization properties
Multiplexing of several guest OS
Isolation
Consolidation: running multiple systems on one physicalhost
Multiple guest OS compete for memory of host
Pierre Riteau An Overview of Virtualization Technologies 40/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Live MigrationMemory ManagementSnapshots
http://find/7/31/2019 Virtualization Technologies - P. Riteau
41/44
Ballooning
Paravirtualized driver runs in the VM
Responds to hypervisor requests for memoryInflate/deflate its memory allocation
Memory is given back to the hypervisor Can be used by other VMs afterwards
Pierre Riteau An Overview of Virtualization Technologies 41/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Live MigrationMemory ManagementSnapshots
http://find/7/31/2019 Virtualization Technologies - P. Riteau
42/44
Page Sharing
Typical to run multiple times the OS on one host
Each OS will have its own copy of code and data from
kernellibrariesapplications
Detect identical pages in multiples VMs of the same host
Merge identical pages to reduce memory consumption
Mark shared pages as read-only to do copy on write
Pierre Riteau An Overview of Virtualization Technologies 42/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
Live MigrationMemory ManagementSnapshots
http://find/7/31/2019 Virtualization Technologies - P. Riteau
43/44
Snapshots
Snapshot = save full state (memory + storage) of a VM
Allows to return to a previous state
Some scenariosWrong configuration change rollback to snapshotFailed OS update rollback to snapshot
Copy-On-Write (COW) for storing changes
Store only modifications made on writes
Pierre Riteau An Overview of Virtualization Technologies 43/44
What is virtualization?System-level VirtualizationAdvanced Virtualization Mechanisms
Summary
http://find/7/31/2019 Virtualization Technologies - P. Riteau
44/44
Summary
Virtualization offers different interfaces (= abstration).
Concept of virtual machine as an execution platform
Different kinds of virtual machinesSystem-level virtualization allows to execute regular OS
Features offered by system-level virtualization
Live migration in LAN or WANMemory balancing/sharingSnapshots
Pierre Riteau An Overview of Virtualization Technologies 44/44
http://find/