+ All Categories
Home > Documents > Virtualization Technologies - P. Riteau

Virtualization Technologies - P. Riteau

Date post: 05-Apr-2018
Category:
Upload: ashkan-ilchi
View: 220 times
Download: 0 times
Share this document with a friend

of 44

Transcript
  • 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/

Recommended