Computer Science > Networking and Internet Architecture
[Submitted on 21 Nov 2016 (v1), last revised 4 Apr 2019 (this version, v2)]
Title:VM Scaling and Load Balancing via Cost Optimal MDP Solution
View PDFAbstract:We address a cost optimization problem faced by a user who runs instances of applications in a remote cloud configuration constructed of multiple virtual machines (VMs). Each VM runs a single application instance which can execute tasks specific to that application. Managing the VMs involves a sophisticated trade-off between cloud-related demands, which are expressed by the provisional costs of leased cloud resources, and exogenous cost demands expressed by service revenues that are typically bound to SLAs. The internal costs may include VM deployment/termination cost, and VM lease cost. The exogenous costs refer to rewards accumulated due to the successfully accomplished tasks being run by each application instance. In the case where the SLA restricts performance to a certain load level at each VM, tasks incoming at VMs that reached that level are rejected. Rejections cause fines deducted against the rewards. The performance level is also quantified, namely, by means of a delay cost, according to the average delay experienced by tasks. Typical examples for specific applications which fall within this class of problems include handling of scientific worklflows and network functioning virtualization (NFV). We model this problem by cost-optimal load balancing to a queuing system with a flexible number of queues, where a queue (VM) can be deployed, can have a task directed to it and can be terminated. We analyze the system by Markov decision process (MDP) and numerically solve it to find the optimal policy, which captures the aforementioned costs and performance constraints. Within this constrained framework, we also investigate the impact of average VM deployment time. We show that the optimal policy possesses decision thresholds which depend on several parameters. We validate policies found by MDP, through directing an exogenous computational tasks flow to a set-up implemented on AWS.
Submission history
From: Mark Shifrin [view email][v1] Mon, 21 Nov 2016 19:11:24 UTC (388 KB)
[v2] Thu, 4 Apr 2019 16:33:34 UTC (802 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Connected Papers (What is Connected Papers?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
alphaXiv (What is alphaXiv?)
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Hugging Face (What is Huggingface?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.