VMThunder: Fast Provisioning of Large-Scale Virtual Machine Clusters

Infrastructure as a service (IaaS) allows users to rent resources from the Cloud to meet their various computing requirements. The pay-as-you-use model, however, poses a nontrivial technical challenge to the IaaS cloud service providers: how to fast provision a large number of virtual machines (VMs) to meet users' dynamic computing requests? We address this challenge with VMThunder, a new VM provisioning tool, which downloads data blockson demandduring the VM booting process and speeds up VM image streaming by strategically integrating peer-to-peer (P2P) streaming techniques with enhanced optimization schemes such as transfer on demand, cache on read, snapshot on local, and relay on cache. In particular, VMThunder stores the original images in a share storage and in the meantime it adopts a tree-based P2P streaming scheme so that common image blocks are cached and reused across the nodes in the cluster. We implement VMThunder in CentOS Linux and thoroughly test its performance. Comprehensive experimental results show that VMThunder outperforms the state-of-the-art VM provisioning methods, with respect to scalability, latency, and VM runtime I/O performance.

[1]  Ming Mao,et al.  A Performance Study on the VM Startup Time in the Cloud , 2012, 2012 IEEE Fifth International Conference on Cloud Computing.

[2]  Dutch T. Meyer,et al.  Capo: Recapitulating Storage for Virtual Desktops , 2011, FAST.

[3]  Chunqiang Tang,et al.  FVD: A High-Performance Virtual Machine Image Format for Cloud , 2011, USENIX Annual Technical Conference.

[4]  Zhe Zhang,et al.  VDN: Virtual machine image distribution network for cloud data centers , 2012, 2012 Proceedings IEEE INFOCOM.

[5]  Jun Zhu,et al.  Twinkle: A fast resource provisioning mechanism for internet services , 2011, 2011 Proceedings IEEE INFOCOM.

[6]  Tianyu Wo,et al.  DVCE: The Virtual Computing Environment Supported by Distributed VM Images , 2012, 2012 IEEE 15th International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing Workshops.

[7]  Angelos Bilas,et al.  Orchestra: Extensible Block-Level Support for Resource and Data Sharing in Networked Storage Systems , 2008, 2008 14th IEEE International Conference on Parallel and Distributed Systems.

[8]  Darrell Reimer,et al.  Virtual Machine Images as Structured Data: The Mirage Image Library , 2011, HotCloud.

[9]  Dutch T. Meyer,et al.  Parallax: virtual disks for virtual machines , 2008, Eurosys '08.

[10]  Chunyi Peng,et al.  An empirical analysis of similarity in virtual machine images , 2011, Middleware '11.

[11]  Sebastien Goasguen,et al.  Image Distribution Mechanisms in Large Scale Cloud Providers , 2010, 2010 IEEE Second International Conference on Cloud Computing Technology and Science.

[12]  Eyal de Lara,et al.  SnowFlock: rapid virtual machine cloning for cloud computing , 2009, EuroSys '09.

[13]  Angelos Bilas,et al.  Violin: a framework for extensible block-level storage , 2005, 22nd IEEE / 13th NASA Goddard Conference on Mass Storage Systems and Technologies (MSST'05).

[14]  Gabriel Antoniu,et al.  Going back and forth: efficient multideployment and multisnapshotting on clouds , 2011, HPDC '11.

[15]  Richard Wolski,et al.  The Eucalyptus Open-Source Cloud-Computing System , 2009, 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid.

[16]  Weijun Xiao,et al.  Implementation and Performance Evaluation of Two Snapshot Methods on iSCSI Target Storages , 2006 .

[17]  Jon Howell,et al.  Flat Datacenter Storage , 2012, OSDI.

[18]  Philip M. Papadopoulos Extending clusters to Amazon EC2 using the Rocks toolkit , 2011, Int. J. High Perform. Comput. Appl..