Cost-Optimal Outsourcing of Applications into the Clouds

Commercial services for provisioning software components and virtual infrastructure in the cloud are emerging. For customers, this creates a multitude of possibilities for outsourcing part of the IT-stack to third parties in order to run their applications. These possibilities are associated with different running costs, so cloud customers have to determine the optimal solution. In this paper, we present and experimentally evaluate an algorithm that solves the corresponding optimization problem. We assume that applications are described as templates, fixing the deployment structure and constraining the properties of the used soft- and hardware components. Different parts of the application may be outsourced to different providers and several levels of outsourcing can be considered. However, dependencies between different parts of the application have to be respected. Our algorithm decomposes the application graph in a first step-in order to discover all suitable cloud provisioning services from a registry. It determines the optimal solution by representing the problem as constraint optimization problem that can be solved by an existing solver implementation.

[1]  Randy H. Katz,et al.  Above the Clouds: A Berkeley View of Cloud Computing , 2009 .

[2]  Michael H. Kalantar,et al.  Pattern Based SOA Deployment , 2007, ICSOC.

[3]  Toby Walsh,et al.  Handbook of Constraint Programming , 2006, Handbook of Constraint Programming.

[4]  Frank Leymann,et al.  Customer-defined service level agreements for composite applications , 2009, Enterp. Inf. Syst..

[5]  Frank Leymann,et al.  Towards Provisioning the Cloud: On the Usage of Multi-Granularity Flows and Services to Realize a Unified Provisioning Infrastructure for SaaS Applications , 2008, 2008 IEEE Congress on Services - Part I.

[6]  Vijay Karamcheti,et al.  Optimal resource-aware deployment planning for component-based distributed applications , 2004, Proceedings. 13th IEEE International Symposium on High performance Distributed Computing, 2004..

[7]  Anne H. H. Ngu,et al.  QoS-aware middleware for Web services composition , 2004, IEEE Transactions on Software Engineering.

[8]  Rajkumar Buyya,et al.  Article in Press Future Generation Computer Systems ( ) – Future Generation Computer Systems Cloud Computing and Emerging It Platforms: Vision, Hype, and Reality for Delivering Computing as the 5th Utility , 2022 .

[9]  Li Yin,et al.  BRAHMA: Planning Tool for Providing Storage Management as a Service , 2007, IEEE International Conference on Services Computing (SCC 2007).

[10]  Frank Leymann,et al.  A Framework for Optimized Distribution of Tenants in Cloud Applications , 2010, 2010 IEEE 3rd International Conference on Cloud Computing.

[11]  Frank Leymann,et al.  Cafe: A Generic Configurable Customizable Composite Cloud Application Framework , 2009, OTM Conferences.

[12]  Walter Brisken,et al.  To Lease or Not to Lease from Storage Clouds , 2010, Computer.

[13]  Himabindu Pucha,et al.  Towards Optimizing Hadoop Provisioning in the Cloud , 2009, HotCloud.

[14]  Miron Livny,et al.  The cost of doing science on the cloud: The Montage example , 2008, 2008 SC - International Conference for High Performance Computing, Networking, Storage and Analysis.

[15]  Jie Qiu,et al.  The Method and Tool of Cost Analysis for Cloud Computing , 2009, 2009 IEEE International Conference on Cloud Computing.

[16]  Marin Litoiu,et al.  Deployment of Services in a Cloud Subject to Memory and License Constraints , 2009, 2009 IEEE International Conference on Cloud Computing.

[17]  Alexander Lazovik,et al.  IEEE International Conference on Cloud Computing , 2010 .

[18]  Rajkumar Buyya,et al.  A Particle Swarm Optimization-Based Heuristic for Scheduling Workflow Applications in Cloud Computing Environments , 2010, 2010 24th IEEE International Conference on Advanced Information Networking and Applications.