NORMA eResearch @NCI Library

Reinforcement Learning-Based Cost and Latency Optimization in Kubernetes-Enabled Multi-Cloud Environments

Palnati, Sai Kumar Reddy (2025) Reinforcement Learning-Based Cost and Latency Optimization in Kubernetes-Enabled Multi-Cloud Environments. Masters thesis, Dublin, National College of Ireland.

[thumbnail of Master of Science]
Preview
PDF (Master of Science)
Download (2MB) | Preview
[thumbnail of Configuration Manual]
Preview
PDF (Configuration Manual)
Download (1MB) | Preview

Abstract

In this project, I developed a reinforcement learning-based scheduler for Kubernetes that can smartly figure out where to place new pods, whether on a simulated AWS cluster or an Azure one—to keep both costs and response times as low as possible. Because of some organizational rules, I wasn't able to spin up real AWS EKS or Azure AKS clusters, so instead I used Kind (that's Kubernetes running inside Docker containers) to create two totally separate local clusters on my laptop, one standing in for AWS and the other for Azure. To make everything as realistic as possible, I pulled the latest on-demand pricing straight from the official AWS and Azure websites for December 2025 and used real-world latency numbers between regions that I found there too. I have developed a custom environment by using Gymnasium, where it is a popular toolkit for RL agents training purposes. I have used Locust for managing workloads, where it is an open-source tool for testing artificial work loads and to simulate real application traffic. I have trained the PPO agent by using RLlib, and I have done all the training and testing in my MacBook Air with the M2 chip—no servers needed. To train the agent, it took approximately 80 iterations, but when the training was done, the agent was able to hit an average cost of around $1.23, but the kubernetes default scheduler was hitting around $4.77 in the same work load. This can tell us a good drop of 74% in cost and also improvement in latency of about 7 to 10% due to avoiding overloading by the agent in the cluster. The best thing in my project is everything is reproducible, anyone is able to run on their own machine and I have put the entire code in my Github with clear instructions of the configuration manual where we can configure and set up Kind clusters and running Locust. I'm excited to see where this could go if we eventually move it to real cloud environments.

Item Type: Thesis (Masters)
Supervisors:
Name
Email
Samarawickrama, Yasantha
UNSPECIFIED
Subjects: Q Science > QA Mathematics > Electronic computers. Computer science
T Technology > T Technology (General) > Information Technology > Electronic computers. Computer science
T Technology > T Technology (General) > Information Technology > Cloud computing
Divisions: School of Computing > Master of Science in Cloud Computing
Depositing User: Ciara O'Brien
Date Deposited: 01 Sep 2026 09:38
Last Modified: 01 Sep 2026 09:38
URI: https://norma.ncirl.ie/id/eprint/9726

Actions (login required)

View Item View Item