Tracing Kernel Virtual Machines (KVM) and Linux Containers (LXC)



Similar documents
Virtualization and Performance NSRC

RPM Brotherhood: KVM VIRTUALIZATION TECHNOLOGY

Architecture of the Kernel-based Virtual Machine (KVM)

Virtual machine CPU monitoring with Kernel Tracing

VMware Server 2.0 Essentials. Virtualization Deployment and Management

Cloud^H^H^H^H^H Virtualization Technology. Andrew Jones May 2011

Advanced Computer Networks. Network I/O Virtualization

Virtualization in Linux KVM + QEMU

Virtualization: Know your options on Ubuntu. Nick Barcet. Ubuntu Server Product Manager

Full and Para Virtualization

Brian Walters VMware Virtual Platform. Linux J. 1999, 63es, Article 6 (July 1999).

BHyVe. BSD Hypervisor. Neel Natu Peter Grehan

kvm: Kernel-based Virtual Machine for Linux

Large-scale performance monitoring framework for cloud monitoring. Live Trace Reading and Processing

OPEN SOURCE VIRTUALIZATION TRENDS. SYAMSUL ANUAR ABD NASIR Warix Technologies / Fedora Community Malaysia

KVM on S390x. Revolutionizing the Mainframe

Enterprise-Class Virtualization with Open Source Technologies

KVM Architecture Overview

Nested Virtualization

Kernel Virtual Machine

Virtual Machines. COMP 3361: Operating Systems I Winter

Hypervisors and Virtual Machines

Virtualization. Jia Rao Assistant Professor in CS

KVM: A Hypervisor for All Seasons. Avi Kivity avi@qumranet.com

Cloud Operating Systems for Servers

Nested Virtualization

CS5460: Operating Systems. Lecture: Virtualization 2. Anton Burtsev March, 2013

The Art of Virtualization with Free Software

The QEMU/KVM Hypervisor

Virtualization Technology. Zhiming Shen

2972 Linux Options and Best Practices for Scaleup Virtualization

Virtualization analysis

Virtualization for Cloud Computing

Practical Applications of Virtualization. Mike Phillips IAP 2008 SIPB IAP Series

Developing a dynamic, real-time IT infrastructure with Red Hat integrated virtualization

Nested Virtualization

VMware and CPU Virtualization Technology. Jack Lo Sr. Director, R&D

Introduction to Virtualization & KVM

Hybrid Virtualization The Next Generation of XenLinux

Virtualization of Wireless LAN Infrastructures

CS 695 Topics in Virtualization and Cloud Computing. More Introduction + Processor Virtualization

Jukka Ylitalo Tik TKK, April 24, 2006

A quantitative comparison between xen and kvm

KVM: Kernel-based Virtualization Driver

Virtualization. Jukka K. Nurminen

Using Linux as Hypervisor with KVM

Basics of Virtualisation

Beyond the Hypervisor

Hardware Based Virtualization Technologies. Elsie Wahlig Platform Software Architect

Taming Hosted Hypervisors with (Mostly) Deprivileged Execution

KVM KERNEL BASED VIRTUAL MACHINE

Uses for Virtual Machines. Virtual Machines. There are several uses for virtual machines:

High-performance vnic framework for hypervisor-based NFV with userspace vswitch Yoshihiro Nakajima, Hitoshi Masutani, Hirokazu Takahashi NTT Labs.

Virtualization. Types of Interfaces

How To Understand The Power Of A Virtual Machine Monitor (Vm) In A Linux Computer System (Or A Virtualized Computer)

Intel Virtualization Technology Overview Yu Ke

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

The Xen of Virtualization

PROCESSOR VIRTUALIZATION ON EMBEDDED LINUX SYSTEMS

matasano Hardware Virtualization Rootkits Dino A. Dai Zovi

Hypervisors. Introduction. Introduction. Introduction. Introduction. Introduction. Credits:

VON/K: A Fast Virtual Overlay Network Embedded in KVM Hypervisor for High Performance Computing

Module I-7410 Advanced Linux FS-11 Part1: Virtualization with KVM

RED HAT ENTERPRISE VIRTUALIZATION

Virtual machines and operating systems

Detection of virtual machine monitor corruptions

Virtualization. ! Physical Hardware. ! Software. ! Isolation. ! Software Abstraction. ! Encapsulation. ! Virtualization Layer. !

Xen and the Art of. Virtualization. Ian Pratt

Understanding Full Virtualization, Paravirtualization, and Hardware Assist. Introduction...1 Overview of x86 Virtualization...2 CPU Virtualization...

COS 318: Operating Systems. Virtual Machine Monitors

Options in Open Source Virtualization and Cloud Computing. Andrew Hadinyoto Republic Polytechnic

Introduction to KVM. By Sheng-wei Lee #

Operating Systems Virtualization mechanisms

Enhancing Hypervisor and Cloud Solutions Using Embedded Linux Iisko Lappalainen MontaVista

Professional Xen Visualization

FRONT FLYLEAF PAGE. This page has been intentionally left blank

Virtualization Technology

Comparing Virtualization Technologies

A technical review on comparison of Xen and KVM hypervisors: An analysis of virtualization technologies

The Turtles Project: Design and Implementation of Nested Virtualization

CPET 581 Cloud Computing: Technologies and Enterprise IT Strategies. Virtualization of Clusters and Data Centers

Intel Virtualization Technology

SDN software switch Lagopus and NFV enabled software node

Assessing the Performance of Virtualization Technologies for NFV: a Preliminary Benchmarking

IOS110. Virtualization 5/27/2014 1

The Microsoft Windows Hypervisor High Level Architecture

How To Virtualize A Computer System

Virtualization on Linux Using KVM and libvirt. Matt Surico Long Island Linux Users Group 11 March, 2014

An Introduction to Service Containers

KVM, OpenStack, and the Open Cloud

Virtualization. Pradipta De

CSE 501 Monday, September 09, 2013 Kevin Cleary

Transcription:

Tracing Kernel Virtual Machines (KVM) and Linux Containers (LXC) École Polytechnique de Montréal Révolution Linux 25 juin 2010

Plan 1 Introduction Virtualization and Contextualization Technologies 2 Tracing the Hypervisor 3 Tracing LXC Contextualization Technology 4 Conclusion

Virtualization and Contextualization Technologies KVM Mainline since 2.6.20 Supports Native (Full) Virtualization using Intel VT-x or AMD-V Supports Paravirtualization for certain drivers with the VirtIO framework

Virtualization and Contextualization Technologies LXC Linux Containers Mainline since 2.6.29 Userspace containers Provide full resource isolation and control Replaces OpenVZ, Vservers, FreeVPS

Plan 1 Introduction Virtualization and Contextualization Technologies 2 Tracing the Hypervisor 3 Tracing LXC Contextualization Technology 4 Conclusion

Role of the Hypervisor Virtual Machine Monitor at ring -1 The host switches between Host State and Guest State using VMCS vmentry when the CPU is given to the virtual machine (the guest) vmexit when the CPU is given back to the host (on HLT or exceptions/traps)

Challenges in tracing KVM The host is blind between the vmentry and vmexit The hypervisor controls the TSC : On exit : save TSC Before re-entrance : take delta + exit overhead Substract from TSC offset Traces recorded in the host and in the guest are not directly aligned

Objectives in tracing KVM Monitoring the whole system (host and guest(s)) Presenting graphically the interaction between the host and the guest(s) Integrating with the dependency analysis Need to add new CPU states

Plan 1 Introduction Virtualization and Contextualization Technologies 2 Tracing the Hypervisor 3 Tracing LXC Contextualization Technology 4 Conclusion

Contextualization Technology LXC No virtualization involved Adds the notion of context to process groups Allow resources control

Contextualization Technology Challenges in tracing LXC Need to add the context attribute in the trace Graphically represent each container as a separate resource Identify the interactions between different groups Identify the impact of resources control

Plan 1 Introduction Virtualization and Contextualization Technologies 2 Tracing the Hypervisor 3 Tracing LXC Contextualization Technology 4 Conclusion

Conclusion Tracing two types of isolation technologies : KVM : full virtualization with potentially no guest assistance LXC : contextualization technology Synchronizing the traces between the host and guest(s) Visually representing the virtualized CPU state