Search papers, labs, and topics across Lattice.
This paper introduces NimbusGuard, a Kubernetes autoscaling system that uses a Deep Q-Network (DQN) agent to proactively adjust resources based on predicted workload patterns. A Long Short-Term Memory (LSTM) model forecasts future workload, which is then used as input for the DQN agent's decision-making process. Experiments show that NimbusGuard achieves better performance and cost efficiency compared to reactive autoscaling methods like Horizontal Pod Autoscaler (HPA) and KEDA.
Reactive Kubernetes autoscaling is dead: NimbusGuard's DQN-powered proactive approach slashes costs and boosts performance.
Cloud native architecture is about building and running scalable microservice applications to take full advantage of the cloud environments. Managed Kubernetes is the powerhouse orchestrating cloud native applications with elastic scaling. However, traditional Kubernetes autoscalers are reactive, meaning the scaling controllers adjust resources only after they detect demand within the cluster and do not incorporate any predictive measures. This can lead to either over-provisioning and increased costs or under-provisioning and performance degradation. We propose NimbusGuard, an open-source, Kubernetes-based autoscaling system that leverages a deep reinforcement learning agent to provide proactive autoscaling. The agents perception is augmented by a Long Short-Term Memory model that forecasts future workload patterns. The evaluations were conducted by comparing NimbusGuard against the built-in scaling controllers, such as Horizontal Pod Autoscaler, and the event-driven autoscaler KEDA. The experimental results demonstrate how NimbusGuard's proactive framework translates into superior performance and cost efficiency compared to existing reactive methods.