Auto-scaling Resources for Cloud Applications using Reinforcement learning

Indu John, Aiswarya Sreekantan, Shalabh Bhatnagar · 2019

Elasticity is an attractive feature of cloud computing, that enables increasing or decreasing the resources allocated to an application in order to adapt to changes in the workload. To efficiently utilize elasticity of clouds, the decisions on resource allocation need to be made algorithmically, adaptively and in real-time. The resource provisioning algorithm must also consider the performance requirements of the application as specified in the Service Level Agreement between the cloud provider and the client. In this paper, we present a reinforcement learning based algorithm that addresses the issues of slow convergence and lack of scalability in classical approaches such as Q-learning. We use the technique of adaptive tile coding and workload forecasting to ensure efficient utilization of resources. The effectiveness of the proposed method as compared to static, threshold-based and other reinforcement learning based allocation schemes is established with experiments on the Cloudsim platform.

Read the paper · More papers on PaperTik