Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

23
Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory

Transcript of Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Page 1: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Status Report

Ian PrattUniversity of Cambridge and Founder of XenSource Inc.

Computer Laboratory

Page 2: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Overview

Xen Today: 2.0.5 Xen 3.0 Development Update New benchmark results Ongoing research

Page 3: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Xen Today : 2.0 Features

Secure isolation between VMs Resource control and QoS Only guest kernel needs to be ported

All user-level apps and libraries run unmodified Linux 2.4/2.6, NetBSD, FreeBSD, Plan9

Execution performance is close to native Supports the same hardware as Linux x86 Live Relocation of VMs between Xen nodes

Page 4: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Para-Virtualization in Xen

Arch xen_x86 : like x86, but replace privileged instructions with Xen hypercalls Avoids binary rewriting and fault trapping For Linux 2.6, only arch-dep files modified

Modify OS to understand virtualised env. Wall-clock time vs. virtual processor time

• Xen provides both types of alarm timer Expose real resource availability

• Enables OS to optimise behaviour

MMU virtualisation: direct vs. shadow mode

Page 5: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

I/O Architecture

Xen IO-Spaces delegate guest OSes protected access to specified h/w devices Virtual PCI configuration space Virtual interrupts

Devices are virtualised and exported to other VMs via Device Channels Safe asynchronous shared memory transport ‘Backend’ drivers export to ‘frontend’ drivers Net: use normal bridging, routing, iptables Block: export any blk dev e.g. sda4,loop0,vg3

Page 6: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Xen 2.0 Architecture

Event Channel Virtual MMUVirtual CPU Control IF

Hardware (SMP, MMU, physical memory, Ethernet, SCSI/IDE)

NativeDeviceDriver

GuestOS(XenLinux)

Device Manager & Control s/w

VM0

NativeDeviceDriver

GuestOS(XenLinux)

UnmodifiedUser

Software

VM1

Front-EndDevice Drivers

GuestOS(XenLinux)

UnmodifiedUser

Software

VM2

Front-EndDevice Drivers

GuestOS(XenBSD)

UnmodifiedUser

Software

VM3

Safe HW IF

Xen Virtual Machine Monitor

Back-End Back-End

Page 7: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Xen 3.0 Architecture

Event Channel Virtual MMUVirtual CPU Control IF

Hardware (SMP, MMU, physical memory, Ethernet, SCSI/IDE)

NativeDeviceDriver

GuestOS(XenLinux)

Device Manager & Control s/w

VM0

NativeDeviceDriver

GuestOS(XenLinux)

UnmodifiedUser

Software

VM1

Front-EndDevice Drivers

GuestOS(XenLinux)

UnmodifiedUser

Software

VM2

Front-EndDevice Drivers

UnmodifiedGuestOS(WinXP))

UnmodifiedUser

Software

VM3

Safe HW IF

Xen Virtual Machine Monitor

Back-End Back-End

VT-x

32/64bit

AGPACPIPCI

SMP

Page 8: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

3.0 Headline Features

AGP/DRM in dom0 ACPI/PCI support in dom0 Support for SMP guests x86_64 support Intel VT-x support for unmodified guests Enhanced control and management

tools Optimised inter-VM networking IA64 and Power support, PAE36

Page 9: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

x86_64

AMD Opteron and Intel EM64T Requires different approach to plain x86

Can’t use segmentation to protect Xen from guest OS kernels

Switch page tables between kernel and user Large VA space offers other optimisations

Current design supports up to 8TB mem Call for user testing in ~2-3 weeks

Page 10: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

SMP Guest OSes

Takes great care to get good performance while remaining secure

Paravirtualized approach yields many benefits Avoids many virtual IPMIs

Need for better SMP-aware scheduler

Believed stable, optimisations pending

Page 11: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

VT-x / Pacifica

Enables unmodified GuestOSes to be supported

Xen has excellent Shadow page table support

Requires simple platform emulation Install paravirtualized drivers after

booting for high-performance IO

Page 12: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

4th Generation Tools

Controlling Xen is easy, it’s coordinating the rest of the system that’s hard Driver domains; firewall/routeing rules;

shaping LVM / filesystem image management VM relocation Resource measurement, control

Managing clusters of Xen nodes Replace monolithic xend with tool suite

communicating via The Registry

Page 13: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Physical Host

Dom0 DomU

xenbus netfront blkfrontnetback blkback xenbus

consoledaemon

ctrldaemon

xenbusdaemon

libxc / libxen

mux

registry

cluster managementtool

other clustermanagementtool

Page 14: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Live VM Relocation

Why is VM relocation useful? Managing a pool of VMs running on a cluster Taking nodes down for maintenance Load balancing VMs across the cluster

Why is it a challenge? VMs have lots of state Some VMs will have soft real-time

requirements• E.g. web servers, databases, game servers

Can only commit limited resources to migration

Page 15: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

VM Relocation Strategy

Page 16: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Writeable Working Set

Page 17: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Rate Limited Migration

Page 18: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Iterative Progress: SPECWeb

Page 19: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Iterative Progress: Quake3

Page 20: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Quake 3 Server migration

Page 21: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Research Roadmap

Cluster load balancing Pre-migration analysis phase Optimization over coarse timescales

Evacuating nodes for maintenance Move easy to migrate VMs first

Storage-system support for VM clusters Decentralized, data replication, copy-on-

write “Internet Suspend Resume”

Just rsync plus IPSec tunnels

Page 22: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Research Roadmap

Cluster load balancing algorithms Exploit properties of live migration

System debugging and fault tolerance Lightweight checkpointing, distributed

watchpoints, deterministic replay I/O interposition and replay

VM forking Lightweight service replication, isolation

Secure virtualization Multi-level secure Xen

Page 23: Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.

Conclusions

Xen 3.0 release on-target!