Linux Virtualization Update

Similar documents
Virtualization Food Fight. Rik van Riel

What is KVM? KVM patch. Modern hypervisors must do many things that are already done by OSs Scheduler, Memory management, I/O stacks

Optimizing and Enhancing VM for the Cloud Computing Era. 20 November 2009 Jun Nakajima, Sheng Yang, and Eddie Dong

Virtualisation: The KVM Way. Amit Shah

Xen is not just paravirtualization

Xen Project 4.4: Features and Futures. Russell Pavlicek Xen Project Evangelist Citrix Systems

Xen VT status and TODO lists for Xen-summit. Arun Sharma, Asit Mallick, Jun Nakajima, Sunil Saxena

Xen. past, present and future. Stefano Stabellini

KVM Weather Report. Amit Shah SCALE 14x

Index. 3D support, 257. Boot firmware, 47 Boot trampoline, 40 Booting, 27 Borrowed virtual time scheduler, 219 Breakpoints, , 27

Hostless Xen Deployment

The Price of Safety: Evaluating IOMMU Performance

Transforming XenServer into a proper open-source project

Virtualization. Starting Point: A Physical Machine. What is a Virtual Machine? Virtualization Properties. Types of Virtualization

Virtualization. ! Physical Hardware Processors, memory, chipset, I/O devices, etc. Resources often grossly underutilized

Red Hat Enterprise Virtualization Hypervisor Roadmap. Bhavna Sarathy Senior Technology Product Manager, Red Hat

Xen/paravirt_ops upstreaming Jeremy Fitzhardinge XenSource 04/18/07

SUSE Linux Enterprise Server: Supported Virtualization Technologies

SUSE An introduction...

The only open-source type-1 hypervisor

CSE 120 Principles of Operating Systems

Xen Project Status Ian Pratt 12/3/07 1

A Resource Management Mechanism and Its Implementation for Virtual Machines

Spring 2017 :: CSE 506. Introduction to. Virtual Machines. Nima Honarmand

Xen on ARM. How fast is it, really? Stefano Stabellini. 18 August 2014

KVM Forum Vancouver, Daniel P. Berrangé

Increase KVM Performance/Density

Knut Omang Ifi/Oracle 20 Oct, Introduction to virtualization (Virtual machines) Aspects of network virtualization:

Virtualization and Performance

KVM on POWER Status update & IO Architecture

Xen Summit Spring 2007

Introduction Construction State of the Art. Virtualization. Bernhard Kauer OS Group TU Dresden Dresden,

Intel Virtualization Technology Roadmap and VT-d Support in Xen

Libvirt presentation and perspectives. Daniel Veillard

CHAPTER 16 - VIRTUAL MACHINES

Libvirt: a virtualization API and beyond

Virtual Machines. Part 2: starting 19 years ago. Operating Systems In Depth IX 1 Copyright 2018 Thomas W. Doeppner. All rights reserved.

Practical Xen Testing at Intel

Xen on ARM ARMv7 with virtualization extensions

Advanced Operating Systems (CS 202) Virtualization

Introduction to Oracle VM (Xen) Networking

libvirt integration and testing for enterprise KVM/ARM Drew Jones, Eric Auger Linaro Connect Budapest 2017 (BUD17)

Module 1: Virtualization. Types of Interfaces

Xen on ARM. Stefano Stabellini

I/O and virtualization

Creating and Controlling KVM Guests using libvirt

Virtualization. Pradipta De

COMPUTER ARCHITECTURE. Virtualization and Memory Hierarchy

Nested Virtualization and Server Consolidation

Junhong Jiang, Kevin Tian, Chris Wright, Don Dugger

Virtualized SISCI. Extending Virtual Machines With a Shared Memory API Utilizing PCIe Networking. Halvor Kielland-Gyrud Master s Thesis Spring 2017

Virtual machine architecture and KVM analysis D 陳彥霖 B 郭宗倫

Nested Virtualization Update From Intel. Xiantao Zhang, Eddie Dong Intel Corporation

Virtual Machines. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University

Advanced Systems Security: Virtual Machine Systems

The Challenges of X86 Hardware Virtualization. GCC- Virtualization: Rajeev Wankar 36

DOUG GOLDSTEIN STAR LAB XEN SUMMIT AUG 2016 ATTACK SURFACE REDUCTION

Bacula Systems Virtual Machine Performance Backup Suite

Linux and Xen. Andrea Sarro. andrea.sarro(at)quadrics.it. Linux Kernel Hacking Free Course IV Edition

Effective Virtual CPU Configuration in Nova

Measuring Disk Performance with Bonnie++ Application Benchmarks httperf: A Load Generator for HTTP Servers Another Application Benchmark: POV-Ray

COSC6376 Cloud Computing Lecture 14: CPU and I/O Virtualization

Xen Extensions to Enable Modular/3rd Party Device Emulation for HVM Domains. Problem Statement

Chapter 5 C. Virtual machines

Lecture 7. Xen and the Art of Virtualization. Paul Braham, Boris Dragovic, Keir Fraser et al. 16 November, Advanced Operating Systems

Vhost and VIOMMU. Jason Wang (Wei Xu Peter Xu

How to abstract hardware acceleration device in cloud environment. Maciej Grochowski Intel DCG Ireland

Virtual Machine Monitors (VMMs) are a hot topic in

Unit 2. VMMs and hypervisors 2966-Network and Services Virtualisation First semester Assistant professor: Katja Gilly Departament: Physics

KVM PV DEVICES.

Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor?

KVM/ARM. Marc Zyngier LPC 12

Cloud Computing Virtualization

HKG : OpenAMP Introduction. Wendy Liang

Zdeněk Kubala Senior QA

Data Center Virtualization: Xen and Xen-blanket

for Kerrighed? February 1 st 2008 Kerrighed Summit, Paris Erich Focht NEC

Virtualization Guide. opensuse Leap 42.2

Operating Systems 4/27/2015

Who stole my CPU? Leonid Podolny Vineeth Remanan Pillai. Systems DigitalOcean

Deploy the ASAv Using KVM

Virtualization History and Future Trends

Xen Project Overview and Update. Ian Pratt, Chairman of Xen.org, and Chief Scientist, Citrix Systems Inc.

Virtualization Introduction

Virtualization. Guillaume Urvoy-Keller UNS/I3S

Tackling the Management Challenges of Server Consolidation on Multi-core System

Advanced Systems Security: Virtual Machine Systems

Ganeti. Scalable Virtualization with Ganeti. by Lance Albertson

Rethinking Machine Types

The Convergence of Storage and Server Virtualization Solarflare Communications, Inc.

VIRTIO: VHOST DATA PATH ACCELERATION TORWARDS NFV CLOUD. CUNMING LIANG, Intel

Cloud and Datacenter Networking

Hypervisor security. Evgeny Yakovlev, DEFCON NN, 2017

XenSource s Xen testing infrastructure

Chapter 12. Virtualization

Virtualization and memory hierarchy

VIRTIO-NET: VHOST DATA PATH ACCELERATION TORWARDS NFV CLOUD. CUNMING LIANG, Intel

Virtualization Management the ovirt way

Implementation and. Oracle VM. Administration Guide. Oracle Press ORACLG. Mc Grauv Hill. Edward Whalen

Prof. Daniel Rossier, PhD

Transcription:

Linux Virtualization Update Chris Wright <chrisw@redhat.com> Japan Linux Symposium, November 2007

Intro Virtualization mini summit Paravirtualization Full virtualization Hardware changes Libvirt Xen

Virtualization Mini summit June 25 27, 2007 Just before OLS in Ottawa. 18 attendees Xen, Vmware, KVM, lguest, UML, LinuxOnLinux x86, ia64, PPC and S390 Focused primarily on Linux as guest and areas of cooperation paravirt_ops and virtio Common interfaces Not the best group to design or discuss management interfaces Defer to libvirt, CIM, etc... CPUID 0x4000_00xx for hypervisor feature detection Can we get to common ABI for paravirt hybrid guest?

Virtualization Mini summit paravirt_ops Make use of existing abstractions wherever possible (clocksource, clockevents or irqchip) Could use a common lib/x86_emulate.c Open question: performance benefit of shadow vs. direct paging? Distro Issues Lack of feature parity between bare metal and Xen is difficult for distros Single binary kernel image Merge upstream Performance NUMA awareness lacking in Xen difficult for Altix Static NUMA representation doesn't map well to dynamic virt environment Cooperative memory management guest memory hints

Virtualization Mini summit Hardware x86 and ia64 hardware virtualization roadmap ppc virtualization is gaining in embedded market, realtime requirments S390 has an instruction for that Virtio Separate driver from transport Makes driver small, looks like a Linux driver and reusable Hypervisor specific transport Open question: device discovery via PCI? Doesn't work well for S390 The Linux Foundation is helping with possible PCI SIG affiliation

Paravirt Guest paravirt_ops merged in Dec 2006 2.6.20 rc1 VMI merged in Feb 2007 2.6.21 rc1 lguest merged (UP only) in July 2007 2.6.23 rc1 Xen merged (domu only) in July 2007 2.6.23 rc1 virtio merged in Oct 2007 2.6.24 rc1 paravirt_ops64 patches underway pv on hvm drivers (Linux and Windows)

paravirt_ops 32 bit x86 only, 64 bit is a work in progress pv_info random info, rather than function entrypoints pv_init_ops functions used at boot time (some for module_init too) pv_time_ops time related functions pv_cpu_ops various privileged instruction ops (includes lazy_mode) pv_irq_ops operations for managing interrupt state pv_apic_ops APIC operations pv_mmu_ops operations for managing pagetables (includes lazy_mode) machine_ops operations for controlling machine state smp_ops operations for controlling multiprocessor machines Patches critical operations

virtio Separate driver core from setup and transport Includes lguest backend Drivers for block, net and console callback() virtio_ring.c add_buf() kick() virtio_net.c Network stack dev_hard_start_xmit

Full Virt KVM First posted in Oct 2007 Merged in Dec 2007 2.6.20 rc1

Hardware Virtualization ongoing reduction of VMEXIT costs general performance improvement VMCALL cost approaches syscall cost vtpr both 32 and 64 bit ASID, VPID Tagged TLB NPT, EPT Hardware solution to shadow page tables VT d, IOMMU safe and efficient direct access to i/o devices PCI SIG IOV device level virtual functions

libvirt Management API create, destroy, start, stop,... Stable Interface Hypervisor neutral Many language bindings Management application C python ocaml libvirt xen kvm qemu hypervisor

libvirt Current Inactive domain management KVM/qemu support OpenVZ experimental driver Secure remote management, with TLS + x509 certificates Device hotplug for disks & NICs VCPU pinning, NUMA, and scheduler param tuning Virtual network management Save / restore / migration Future Storage management APIs for files, disks, LVM, & ISCSI Host device enumeration SASL authentication (in particular for Kerberos) CIM providers based upon libvirt

Xen 3.0.3 Oct 2006 Credit scheduler xenoprofile Improved HVM support (usable) blktap Network segmentation offload Improved IA64 support Initial Power support 3.0.2 to 3.0.3 ~13.5% changes from Japanese developers

Xen 3.0.4 Dec 2006 kexec/kdump for Xen and dom0 Paravirt framebuffer Introduction of new XenAPI More improvements for IA64 Improvements for Power 3.0.3 to 3.0.4 ~15.8% changes from Japanese developers

Xen 3.1.0 May 2007 XenAPI 1.0 is official management API XML config files for VMs VM life cycle management Secure XML RPC Many language bindings HVM save/restore/migrate support HVM ballooning 32 on 64 PV 3.0.4 to 3.1.0 ~7% changes from Japanese developers

Xen Future Qemu update Native client support AMD ASID support Rebase to current Linux vtpr, NMIp XenAPI Japanese translation AMD NPT support pvscsi ACPI S3 support 3.1.0 to current XSM (supports ACM and Flask) Intel VT d support >18% changes from Japanese developers AMD IOMMU support MTRR/PAT virtualization cpufreq qemu dm pv support MSI support Intel TXT Verified Launch

Future? 64 bit hypervisor Hardware that supports virtualization CPU, platform, and I/O devices Paravirtualization continues to be useful I/O, time, dynamic memory management Linux guest adapts to environment dynamically Hypervisor is everywhere Embedded Server VMware ESX3i, XenServer OEM Edition Small footprint, pre installed Embedded Client Intel vpro Small footprint, pre installed