MORAIS, F. J. A.; http://lattes.cnpq.br/0987042606840444; MORAIS, Fábio Jorge Almeida.
Abstract:
The IaaS model, provided by the Cloud Computing paradigm, is defined by two main features: the on-demand provision of resources; and the pay-as-you-go pricing model, that allows application providers to pay proportionally to the quantity and time of use of the acquired resources. These features are used to build elastic virtual infrastructures, which can have its resources capacity dynamically modified to accommodate demands’ fluctuations of the running application. Such elasticity is mainly exploited for running horizontally scalable applications, that executes over a long period of time and have time-varying workloads. Ideally, for such applications, the capacity of the execution infrastructure can be automatically provisioned based on the application demands, to ensure the application QoS and at the same time minimize the execution costs, in terms of the acquired resources. This provisioning context can be expanded to conceive a scenario of auto scaling as a service in IaaS. In this way, the application owner can contract a service that assumes the responsibility of dynamically and efficiently provisioning the application during its execution. However, due to privacy and mainly generality issues in terms of the provisioned applications, this service needs to operate with non-application-specific information, such as CPU utilization, memory, etc., i.e., in a non-intrusive way. This work aims to investigate the thesis on the construction feasibility of a non-intrusive auto scaling service for different horizontally scalable applications in an IaaS environment. Such service must be able to keep the QoS of the provisioned application at acceptable levels and, if there are workload variations, minimize the execution costs. In general, current provisioning solutions use provisioning approaches that operate in a reactive or proactive manner. Thus, the main objective of this work is to analyze how reactive and proactive auto scaling solutions can be used to basis an auto scaling service in IaaS, describing the efficiencies and limitations of these approaches and pointing out guidelines for the service construction.