decentralised repositories for transparent and efficient virtual machine operations
Virtualisation is a key technology in Cloud computing that allows users to run multiple virtual machines (VM) with their own application environment on top of physical hardware. Virtualisation enables scaling up and down of applications by elastic on-demand provisioning of VMs in response to their variable load to achieve increased utilisation efficiency at a lower operational cost, while guaranteeing the desired level of Quality of Service (QoS, such as response time) to the end-users.
Typically, VMs are created using provider specific templates (so-called VM images) that are stored in proprietary repositories, leading to provider lock-in and hampering portability or simultaneous usage of multiple federated Clouds.
In this context, optimisation at the level of the VM images is needed both by the applications and by the underlying Cloud providers for improved resource usage, operational costs, elasticity, storage use, and other desired QoS related features. We identify in this projective critical barriers that prevent many users from industry, business and academia to effectively use Cloud resources and virtualised environments for their computing and data processing needs:
- Manual, error-prone and time consuming VM image creation
- Monolithic VM images with large deployment and migration overheads
- Proprietary unoptimised VM repositories
- Inelastic resource provisioning
- Lack of information to support effective VM image optimisation