Font Size: a A A

Research On Auto-Scaling Algorithms For Cloud-Native Microservices

Posted on:2024-11-18Degree:DoctorType:Dissertation
Country:ChinaCandidate:C Y MengFull Text:PDF
GTID:1528307349985619Subject:Software engineering
Abstract/Summary:PDF Full Text Request
In recent years,cloud computing has solidified its role as a key strategic infrastructure,integral to advancements in new-generation information technology and the digital economy.Auto-scaling,a core functionality of cloud computing,dynamically adjusts resources in line with real-time application demands,thereby optimizing resource utilization and application performance.Concurrently,cloud-native microservices,noted for their lightweight and scalable deployment capabilities,have become the method of choice for developing modern applications.Nevertheless,the dynamic workloads of user-facing microservice applications,often marked by variability and sudden spikes,present significant challenges.These challenges are further compounded by complex inter-service dependencies,complicating the task of maintaining Quality of Service(Qo S)within Service Level Agreement(SLA).The balance between conservative strategies,which may lead to resource over-provisioning,and aggressive strategies,risking SLA breaches,makes designing effective auto-scaling solutions a complex endeavor.Addressing these challenges,this thesis explores auto-scaling strategies for cloud-native microservices under dynamic workloads,leveraging advanced machine learning technologies to enhance Qo S guarantees and resource efficiency at runtime.The principal contributions and research efforts of this thesis include:(1)Dependency-Adaptive Auto-Scaling Algorithm: This algorithm adopts an iterative learning method based on expectation maximization to adaptively generate affinity matrices,unveiling service dependencies.It utilizes attention-based graph convolutional networks to extract microservice temporal-spatial features by aggregating neighboring data from graph structures.This method identifies potential dependencies and accurately predicts the resource demands of services under dynamic workloads,enabling the simultaneous reconfiguration of resources for all related services in a single scaling operation,thus preventing cascading failures due to service dependencies.Experimental outcomes validate the algorithm’s effectiveness in precise resource prediction and allocation,adapting to changes in dependencies,and significantly reducing SLA violations by an average of 41% at lower costs.(2)Offline Deep Reinforcement Learning-Based Auto-Scaling Algorithm: By creating a microservice simulation environment with historical telemetry data and machine learning techniques,this method dynamically simulates the relationships between resource configurations,workloads,and performance.This simulation environment improves the training efficiency of a Deep Reinforcement Learning(DRL)agent,which,after training,is capable of performing online resource scaling in real microservice environments based on live monitoring metrics.Evaluations show enhanced resource allocation efficiency and a substantial decrease in SLA violation rates at reduced costs,compared to other auto-scaling strategies.The evaluation results demonstrate that the proposed approach realizes a more effective resource allocation policy under the limited number of time-consuming interactions and significantly decreases the 32%-92% in SLA violation rate at a lower cost compared to other main methods.(3)Burst-Aware Auto-Scaling Algorithm: This strategy introduces a predictive burst detection mechanism capable of differentiating between predictable periodic workload peaks and actual surges.Upon detecting a burst,it applies an overestimation method for a more flexible resource allocation to accommodate the rapid increase in demand.In contrast,during non-burst periods,it utilizes DRL to adjust resource estimations,aiming for a more conservative and accurate allocation strategy.Experiments across ten realworld workloads demonstrate its effectiveness,achieving a 57% average reduction in SLO violations and cutting resource costs by 10% compared to other prominent methods.In summary,this thesis addresses the issue of auto-scaling cloud-native microservices under dynamic workloads by proposing three innovative algorithms that incorporate cutting-edge machine learning techniques,such as graph neural networks and deep reinforcement learning.These algorithms effectively overcome the limitations of existing auto-scaling strategies,which struggle to manage complex service dependencies,interaction delays,and workload bursts.Extensive experiments validate the effectiveness of these algorithms in optimizing Qo S,improving resource utilization,and reducing SLA violations.The findings of this research are crucial for understanding and implementing reliable and high-quality cloud-native applications,and they lay a solid foundation for further advancements in service computing and related fields.
Keywords/Search Tags:Auto-Scaling, Cloud-Native Microservices, Quality of Service, Re-source Efficiency, Cloud Computing
PDF Full Text Request
Related items