Elasticity, i.e., the ability to scale up or down resources according to observed demand, is one of the most important requirements in today’s cloud applications. CELAR aims to provide automatic, multi-grained elasticity for generic applications in the cloud. CELAR will offer an adaptive and real time mechanism for the commitment of just the right amount of resources based on application demand, performance and requirements resulting in optimal use of infrastructure and significant reductions in costs.
CELAR covers the three layers required by an application to operate over the Cloud: the infrastructure layer, supporting two different IaaS providers, the monitoring/optimization middleware, supporting scalable and expressive collection of system metrics used to perform smart elasticity actions, and the programming development environment, allowing the users to to define the characteristics of their applications, launch them, submit jobs and monitor performance. This outcome can be bundled in a single software package for one-click installation of any application alongside its automated resource provisioning over a Cloud IaaS.
Both IaaS cloud providers and cloud application developers can benefit from the project’s outcome. The former can provide the elasticity feature as a service through their infrastructure and optimize their resource utilization. The latter can utilize the elasticity mechanisms to adapt their applications to quickly respond to unpredictable workload variations while being charged only for the resources they need. In this presentation we showcase CELAR’s results so far.