240 likes | 569 Views
Container-based OS Virtualization. A Scalable, High-performance Alternative to Hypervisors Stephen Soltesz, Herbert Pötzl, Marc Fiuczynski, Andy Bavier & Larry Peterson. PlanetLab Usage. Number of Active VMs. Number of Resident VMs. 100. 30. 25. 80. 20. 60. 15. 40. 10. 20. 5. 0.
E N D
Container-based OS Virtualization A Scalable, High-performance Alternative to Hypervisors Stephen Soltesz, Herbert Pötzl, Marc Fiuczynski, Andy Bavier & Larry Peterson
PlanetLab Usage Number of Active VMs Number of Resident VMs 100 30 25 80 20 60 15 40 10 20 5 0 0 • Typical Node (2.4GHz, 1GB, 100-200GB disk) • ~250-300 configured VM file systems on disk • 40-90 resident VMs with ≥ 1 process • 5-20 active VMs using CPU
Usage Scenarios • Efficiency -> Performance • IT Data Centers • Grid, HPC Clusters • Efficiency -> Low-overhead • Linux-based Phone • OLPC Laptops • Enhanced WIFI Routers • Efficiency -> Scalability • Web Hosting • Amazon EC2 • PlanetLab, VINI Network Research
Presentation Outline • Why Container-based OS Virtualization? • High-level Design • Hypervisor • Container-based OS • Guest VM Environment • Xen • VServer • Evaluation
Hypervisor Design Driver Domain
Container Design VM1 VM2 VMn
Presentation Outline • Why Container-based OS Virtualization? • High-level Design • Hypervisor • Container-based OS • Guest VM Environment • Xen • VServer • Evaluation
Xen 3.0 Guest VM • Security Isolation • Hypervisor • Access Physical Level • PCI Address • Virtual Memory • Resource Control • Hypervisor • Allocate Resources • Schedule VMs • I/O Path • Process to Guest OS • Guest OS to IDD • Schedules All VMs • Guest VM & IDD Scheduled • Two levels scheduling in Guest • Resource Control • Driver Domain • Map Virtual Devices • CFQ for disk • HTB for network
VServer 2.0 Guest VM • Resource Control • Map Container to • HTB for Network • CFQ for Disk • Logical Limits • Processes • Open FD • Memory Locks • I/O Path • Process to COS • Scheduler • Single Level • Token Bucket Filter • preserves O(1) scheduler • Security Isolation • Access to Logical Objects • Context ID Filter • User IDs • SHM & IPC address • File system Barriers • Optimizations • File-level Copy-on-write
8,700 lines across 350+ files Leverage existing implementations Applied to Logical Resources Not architecture specific MIPS, ARM, SPARC, etc.. Low Overhead VServer Implementation
Configuration • Hardware • System Software
Conclusion • Virtualization for Manageability • Variety of current Implementations • No one-size-fits-all solution • Hypervisors offer compelling features • Containers are built on well understood technology • Isolation & Efficiency Trade-off • When trade-off is possible… • VServer as alternative • Native Efficiency I/O • Low-Overhead Implementation • More Scalable
Questions Thank you
Speculation on Future Trends • Future improvements to both platforms • COS-Linux + Linux-as-Hypervisor (KVM)
Performance, Lower-Overhead, Scalability Conclusion