UnaCloud is an Opportunistic Cloud Platform that allows to create virtual clusters in non-dedicated hardware by harvesting idle resources in computer rooms across a campus. To launch a virtual cluster, the platform first determines which desktops can run the virtual machines and copies the corresponding images to these computers, mostly located in the same room. Regretfully, UnaCloud uses a TCP-based protocol to copy those images that results in large transmission times. Our diagnostics shows that the main cause for errors when deploying multiple machines is reaching a timeout. This paper reports our efforts to scale the deployment in UnaCloud to support clusters with a large number of nodes. We have implemented and evaluated multiple protocols for transferring virtual machine images. Our tests showed that BitTorrent, a P2P file transfer protocol, outperforms copying a single image using other protocols. Using it, we can deploy up to 100 virtual machines, one per desktop, in less than 10 min. Although this time is twice the offered by Amazon EC2, it is better than the exhibited by dedicated private clouds using software such as OpenStack and VMWare vCloud.
Keywords
- Cloud provisioning
- Virtual machine images
- BitTorrent