A goal of cloud service management is to design self-adaptable auto-scaler to react to workload fluctuations and changing the resources assigned. The key problem is how and when to add/remove resources in order to meet agreed servicelevel agreements. Reducing application cost and guaranteeing service-level agreements (SLAs) are two critical factors of dynamic controller design. In this paper, we compare two dynamic learning strategies based on a fuzzy logic system, which learns and modifies fuzzy scaling rules at runtime. A self-adaptive fuzzy logic controller is combined with two reinforcement learning (RL) approaches: (i) Fuzzy SARSA learning (FSL) and (ii) Fuzzy Q-learning (FQL). As an off-policy approach, Q-learning learns independent of the policy currently followed, whereas SARSA as an on-policy always incorporates the actual agent's behavior and leads to faster learning. Both approaches are implemented and compared in their advantages and disadvantages, here in the OpenStack cloud platform. We demonstrate that both autoscaling approaches can handle various load traffic situations, sudden and periodic, and delivering resources on demand while reducing operating costs and preventing SLA violations. The experimental results demonstrate that FSL and FQL have acceptable performance in terms of adjusted number of virtual machine targeted to optimize SLA compliance and response time. 2017 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing 978-1-5090-6611-7/17 $31.00
In the interest of evaluating solutions, REF also developed a fuzzy rule-based system to compare auto-scaling solutions using reinforcement learning techniques, Fuzzy Q-learning (FQL) and Fuzzy SARSA learning (FSL), the results also show that FSL is effective for periodic workloads.
A Comparison of Reinforcement Learning Techniques for Fuzzy Cloud Auto-Scaling
2017 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGRID)
2017 17th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGRID)
Computer Science