Deploying applications in a multi-cloud environment can be challenging. The cloud providers face the challenge of optimally utilizing the cloud resources to achieve a certain goal such as reducing the power consumption of the cloud. The cloud users, who deploy applications in the cloud, face the challenge of satisfying the application requirements, such as the processing and memory requirements, and application user requirements, such as the throughput and response time constraint. There is a relationship between the challenges faced by the cloud providers and cloud users, which allows these challenges to be studied together. This work covers such a problem, which aims to find a deployment, i.e. allocate resources for an application in a multi-cloud environment, while satisfying the above requirements of the application, application user and cloud provider. The proposed algorithm uses a combination of queueing theory, clustering, graph partitioning and bin packing strategies to solve the multi-cloud application deployment problem. It produces a solution within 20 seconds in 90% of the test scenarios, which is a reasonable amount of time to be useful in practice. In 77% of the test scenarios, the solution's power consumption is within 10% of an unachievable theoretical lower bound, showing that the heuristic algorithm is extremely effective. I would like to express my profound gratitude to my supervisors, Professor C. Murray Woodside and Professor John W. Chinneck, for constantly guiding, inspiring and encouraging me during my thesis. This research would not be possible without their support and feedback. Also, it was a lot of fun to brainstorm with them. My most memorable moment was the discussion to name the algorithm using my initials, BS, or after McDonalds, McD ("billions served"). Unfortunately, I failed to provide strong arguments for such naming. So, we ended up naming the algorithm, MCAD. Furthermore, I would like to thank my living family members, Rupdiner Kaur (mother) and Amarpreet Singh (brother), for their cooperation, and moral and emotional support. Finally, I would like to thank my father, Karamjit Singh, and my grandfather, Rajinder Singh, for providing strength in spirit through the lingering memories.
Distributed service applications make heavy use of clouds and multi-clouds, and must (i) meet service quality goals (e.g. response time) while (ii) satisfying cloud resource constraints and (iii) conserving power. Deployment algorithms must (iv) provide a solution meeting these requirements within a short time to be useful in practice. Very few existing deployment methods address the first three requirements, and those that do take too long to find a deployment. The Low-Power Multi-Cloud Application Deployment (LPD) algorithm fills this gap with a low-complexity heuristic combination of generalized graph partitioning between clouds, bin-packing within each cloud and queueing approximations to control the response time. LPD has no known competitor that quickly finds a solution that satisfies response time bounds. A host execution time approximation for contention is fundamental to achieving sufficient solution speed. LPD is intended for use by cloud managers who must simultaneously manage hosts and application deployments and plan capacity to offer services such as Serverless Computing.On 104 test scenarios deploying up to 200 processes with up to 240 replicas (for scaling), LPD always produced a feasible solution within 100 s (within 20 seconds in over three-quarters of cases). Compared to the Mixed Integer Program solution by CPLEX (which took a lot longer and was sometimes not found) LPD solutions gave power consumption equal to MIP in a third of cases and within 6% of MIP in 95% of cases. In 93% of all 104 cases the power consumption is within 20% of an (unachievable) lower bound.LPD is intended as a stand-alone heuristic to meet solution time restrictions, but could easily be adapted for use as a repair mechanism in a Genetic Algorithm.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.