THAWAN KOOBURAT MICHAEL SWIFT UNIVERSITY OF WISCONSIN - MADISON 1 The Best of Both Worlds with On-Demand Virtualization.

Slides:



Advertisements
Similar presentations
Content Overview Virtual Disk Port to Intel platform
Advertisements

Virtual Machine Technology Dr. Gregor von Laszewski Dr. Lizhe Wang.
Virtualisation From the Bottom Up From storage to application.
Operating System Structure
PowerVM Live Partitioned Mobility A feature of IBM Virtualization Presented by Group 3 Mayra Longoria Mehdi Jafry Ken Lancaster PowerVM Live Partitioned.
11 HDS TECHNOLOGY DEMONSTRATION Steve Sonnenberg May 12, 2014 © Hitachi Data Systems Corporation All Rights Reserved.
NoHype: Virtualized Cloud Infrastructure without the Virtualization Eric Keller, Jakub Szefer, Jennifer Rexford, Ruby Lee ISCA 2010 Princeton University.
G Robert Grimm New York University Disco.
Disco Running Commodity Operating Systems on Scalable Multiprocessors.
1 Disco: Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine, and Mendel Rosenblum, Stanford University, 1997.
Cs238 Lecture 3 Operating System Structures Dr. Alan R. Davis.
KVM/ARM: The Design and Implementation of the Linux ARM Hypervisor Fall 2014 Presented By: Probir Roy.
Virtualization and the Cloud
Virtual Machines. Virtualization Virtualization deals with “extending or replacing an existing interface so as to mimic the behavior of another system”
Virtualization for Cloud Computing
Xen and the Art of Virtualization. Introduction  Challenges to build virtual machines Performance isolation  Scheduling priority  Memory demand  Network.
Virtual Network Servers. What is a Server? 1. A software application that provides a specific one or more services to other computers  Example: Apache.
CSE598C Virtual Machines and Their Applications Operating System Support for Virtual Machines Coauthored by Samuel T. King, George W. Dunlap and Peter.
Virtual WiFi: Bring Virtualization from Wired to Wireless Lei Xia, Sanjay Kumar, Xue Yang Praveen Gopalakrishnan, York Liu, Sebastian Schoenberg, Xingang.
E Virtual Machines Lecture 4 Device Virtualization
Virtualization Technology Prof D M Dhamdhere CSE Department IIT Bombay Moving towards Virtualization… Department of Computer Science and Engineering, IIT.
Tanenbaum 8.3 See references
Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina.
Microkernels, virtualization, exokernels Tutorial 1 – CSC469.
Jakub Szefer, Eric Keller, Ruby B. Lee Jennifer Rexford Princeton University CCS October, 2011 報告人:張逸文.
Module 7: Hyper-V. Module Overview List the new features of Hyper-V Configure Hyper-V virtual machines.
Operating System Support for Virtual Machines Samuel T. King, George W. Dunlap,Peter M.Chen Presented By, Rajesh 1 References [1] Virtual Machines: Supporting.
Benefits: Increased server utilization Reduced IT TCO Improved IT agility.
Virtualization Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation is licensed.
An architecture for space sharing HPC and commodity workloads in the cloud Jack Lange Assistant Professor University of Pittsburgh.
An approach to on the fly activation and deactivation of virtualization-based security systems Denis Efremov Pavel Iakovenko
Virtualization: Not Just For Servers Hollis Blanchard PowerPC kernel hacker.
The Best of Both Worlds with On-Demand Virtualization Thawan Kooburat and Michael M. Swift On-Demand Virtualization allows systems to benefit from virtualization.
Virtual Machine and its Role in Distributed Systems.
CS533 Concepts of Operating Systems Jonathan Walpole.
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
Cloud Operating System Unit 09 Cloud OS Core Technology M. C. Chiang Department of Computer Science and Engineering National Sun Yat-sen University Kaohsiung,
Chapter 2 Introduction to OS Chien-Chung Shen CIS, UD
Introduction to virtualization
Full and Para Virtualization
Lecture 26 Virtual Machine Monitors. Virtual Machines Goal: run an guest OS over an host OS Who has done this? Why might it be useful? Examples: Vmware,
Lecture 12 Virtualization Overview 1 Dec. 1, 2015 Prof. Kyu Ho Park “Understanding Full Virtualization, Paravirtualization, and Hardware Assist”, White.
CSE 451: Operating Systems Winter 2015 Module 25 Virtual Machine Monitors Mark Zbikowski Allen Center 476 © 2013 Gribble, Lazowska,
Cloud Computing – UNIT - II. VIRTUALIZATION Virtualization Hiding the reality The mantra of smart computing is to intelligently hide the reality Binary->
Microsoft Window 9X Operating System Richard Goldman © February 28, 2001.
Course 03 Basic Concepts assist. eng. Jánó Rajmond, PhD
Unit 2 VIRTUALISATION. Unit 2 - Syllabus Basics of Virtualization Types of Virtualization Implementation Levels of Virtualization Virtualization Structures.
Intro To Virtualization Mohammed Morsi
Virtualization Neependra Khare
CS 695 Topics in Virtualization and Cloud Computing, Autumn 2012 CS 695 Topics in Virtualization and Cloud Computing More Introduction + Processor Virtualization.
Virtualization With:. Virtualization With: What Kind of Virtualization? Full virtualization Platform Resource.
Virtualization for Cloud Computing
Virtualization.
Kernel Design & Implementation
Agenda Hardware Virtualization Concepts
Is Virtualization ready for End-to-End Application Performance?
Xen and the Art of Virtualization
Current Generation Hypervisor Type 1 Type 2.
Virtualization Dr. Michael L. Collard
Lecture 24 Virtual Machine Monitors
Operating System Structure
Disco: Running Commodity Operating Systems on Scalable Multiprocessors
Group 8 Virtualization of the Cloud
OS Virtualization.
Virtualization Techniques
CSE 451: Operating Systems Autumn Module 24 Virtual Machine Monitors
Virtualization Dr. S. R. Ahmed.
CSE 451: Operating Systems Autumn Module 24 Virtual Machine Monitors
System Virtualization
Presentation transcript:

THAWAN KOOBURAT MICHAEL SWIFT UNIVERSITY OF WISCONSIN - MADISON 1 The Best of Both Worlds with On-Demand Virtualization

Motivation 2 Virtualization offers many benefits Why virtualization has not yet become ubiquitous?

Concerns with Virtualization 3 Virtualization adds an extra layer that introduces overhead all the time Lack of functionality  GPUs, WLAN and etc. Performance overhead  I/O Devices - Trap and emulate  Memory Virtualization – Extra level of page tables

On-Demand Virtualization 4 Mechanism  Normally execute natively  Virtualize on-demand  Minimal service disruption Benefits  Native performance and full functionality  Pay for virtualization overhead only when used

Uses of On-Demand Virtualization 5 Datacenter  Resource Consolidation  Debugging Desktop Environment  Migration  Checkpointing  Introspection

Main Ideas 6 High-level Design  Pause OS operation and resume inside VM  Set aside VMM partition on disk  Virtualize everything Physical VMM VM Native OS Guest OS

Problem:  Need to transfer OS/Process state from native to virtual execution Solution:  Hibernate/Resume can capture both OS and process state  Snapshot system memory and write image to disk \\ Capturing OS and Process State 7 Native Guest VM Physical Virtualize VMM

Capturing OS and Process States 8 Physical VMM Partition VMM Partition Guest Partition Guest Partition Native Kernel Hibernate Boot Guest Kernel Resume VMM Kernel VMM Kernel Start VM

Discovering Devices inside the VM 9 Problem:  Need to switch from physical to virtual devices Solution:  Use Hotplug support in device  Detach/disable original physical devices before hibernate  Scan for virtual devices after resume \\ 9 VM Physical Virtualize Disk Native NIC Disk Guest NIC

Problem:  Need to preserve OS/Application state which ties to devices  Network connections, File systems  Need to transfer device bindings across different models/types of devices Preserving Device Bindings 10 VM Physical Virtualize Disk Kernel NIC Disk Kernel NIC Apps

Preserving Device Bindings 11 Solution:  Use logical device to retain states and hide changes  Networks: Bonding Driver Detach physical NIC and attach virtual NIC after resume  Block Devices:Device Mapper Update DM’s table to point to a virtual block device Applications Phy VM e1000e e1000 bond0 Kernel Applications Phy VM SATA IDE /dev/mapper/vdisk Kernel Network Disk

The Cost of Preparation 12 Set aside VMM partition on disk  No need to pre-allocate CPU or memory Access hardware through logical devices  Only for devices whose state must be preserved Disable hardware that is not emulated by VMM  Eg. IOMMU

Status 13 Status  Prototype  Linux (~1200 lines of modification)  TuxOnIce (Hibernation patch)  KVM  Support one-way conversion from physical to virtual machine Experience  SCP/SSH remains open  Take about 90 seconds to convert  Hibernating and rebooting take most of the time

Future Work 14 Hibernate to RAM Use kexec for machine reboot Support devirtualize  Transfer VM back to its original machine

Conclusion 15 Benefits  Add another method of using virtualization  Allow more environments to benefit from virtualization without its overhead all the time Contributions  On-demand virtualization is possible  Existing mechanisms in OS can be repurposed

Questions 16

Other Devices 17 CPU  Current:Offline other CPUs, only one core is left running  Future:CPU hotplug Memory  Current:VM must have equal or more RAM than physical machine  Future:Memory hotplug Display  VGA is supported by all graphic cards  Revert to legacy VGA mode before hibernate

Dealing with Platform Devices 18 Platform devices  Device on main board – i.e. timers, interrupt routers  No hotplug support  Kernel only configure them at boot time via ACPI Solution  Boot kernel pass configuration information to resume kernel so that it can reconfigure its devices \\ VM Boot Kernel Resume config \\ VM Guest Kernel config Hibernate Image

Conversion Time 19 Hibernate 10 s Reboot machine 50 s Boot VM 9 s Resume 21 s

Overall Process 20 Hibernate and resume the kernel inside a virtual machine Use hotplugging to detach and scan for new hardware Reconfigure platform devices Update logical device mappings Resume OS subsystem/Applications