MINISTRY OF EDUCATION AND TRAINING HANOI UNIVERSITY OF SCIENCE AND TECHNOLOGY HUYNH HOANG LONG RESEARCHING MULTI-CLOUD MARKETPLACE MODEL DOCTORAL DISSERTATION OF INFORMATION SYSTEMS Hanoi - 2022 MINISTRY OF EDUCATION AND TRAINING HANOI UNIVERSITY OF SCIENCE AND TECHNOLOGY HUYNH HOANG LONG RESEARCHING MULTI-CLOUD MARKETPLACE MODEL Major: Information Systems Code: 9480104 DOCTORAL DISSERTATION OF INFORMATION SYSTEMS SUPERVISORS: 1. NGUYEN HUU DUC 2. LE TRONG VINH Hanoi - 2022 DECLARATION OF AUTHORSHIP I hereby declare that this thesis is my original work and it has been written by me in its entirety. I confirm that: • This work was done wholly during in Ph.
student at Hanoi University of Sci- ence and Technology. • Where any part of this thesis has previously been submitted at Hanoi University of Science and Technology or any other institution, this has been clearly stated. • Where I have consulted the published work of others, this is always clearly at- tributed. • Where I have quoted from the work of others, the source is always given.
With the exception of such quotations, this thesis is entirely my own work. • I have acknowledged all main sources of help. • Where the thesis is based on work done by myself jointly with others, I have made exactly what was done by others and what I have contributed myself. Hanoi, February 22th 2022 Supervisors Ph.
Student i ACKNOWLEDGEMENT My dissertation would not have finished without the support of my supervisors, family, co-authors, and colleagues. I am grateful to all those people who supported and inspired me while facing academic and personal challenges. I would like to pay the deepest gratitude to my first supervisor Dr. Nguyen Huu Duc for offering me a great environment, plenty of opportunities, and freedom to be creative.
Working with him marked an auspicious beginning to my doctoral upbringing. In critical moments, he has been available to provide sincere and determined opinions, helping me make the right decisions. I also thank my second supervisor, Assoc. Le Trong Vinh for his advice, encouragements and guidance throughout my Ph.
His experiences and insights are immensely meaningful for me in my works. I am grateful to them for devoting their precious time to discussing research ideas, proofreading, and explaining how to write good research papers. I would like to thank them for encouraging my research and empowering me to grow as a research scientist. I am grateful to my parents for their limitless love and my parents brought me up with great values of life, including humility and patience.
They always wish I could get Ph. Without their sacrifices and guidance, my education would have been impossible. I also thank my grandmother for her advice in every aspect of life. My success is also theirs.
My co-authors. Many thanks to my co-authors in our works. They had valuable comments for my works. Special thanks to Prof.
Zhenjiang Hu and Assoc. Huynh Quyet Thang for giving me an internship trip at National Institute of Informat- ics, Japan. Hu and members of Tsumina Lab warmly welcomed me into their lab and offered the helpful collaboration in research. Particularly, Van Dang (Ph.D student at NII) and I achieved a successful combination, our paper was accepted by SOMET 2019.
I also thank Mr Le Duc Hung (Ph.D student at TU Wien) for supporting me to implement component-based cloud software on multi-cloud. Many thanks to my colleagues from Department of Information System, School of Information and Communication Technology, Hanoi University of Science and Technology. Nguyen Thi Kim Anh and As- soc. Nguyen Binh Minh for providing such a stimulating and friendly working ii atmosphere.
It is fortunate for me to study in an active environment. Thank you all! Hanoi, February 22th 2022 Ph. Student Huynh Hoang Long iii ABSTRACT Cloud computing have been an effective delivery model for distributing computing that enables the delivery of applications as services over Internet, as well as platform- and infrastructure-level computing resources. It has been increasingly used by busi- nesses, organizations and individuals as a cost-effective IT solution.
Currently, con- sumers can approach cloud services through several existing service delivery methods in a convenient way as follows: Direct cloud service delivery, Cloud Brokerage, and Cloud Marketplace. However, these cloud service delivery models have many limi- tations on cloud service product information, quality of service, monopoly, competi- tiveness, etc. These problems have been damaging to the benefits of cloud consumers having to pay higher than the real value of cloud services. In addition, different com- mercial cloud providers impose different application architectures that tend to lock consumers into their services and do not want to allow the direct competition with oth- ers.
This is the cause of the well-known issue: vendor lock-in. In economics, vendor lock-in, also known as proprietary lock-in or customer lock-in, makes a customer dependent on a vendor for products and services, unable to use another vendor without substantial switching costs [82]. Because they cannot easily move to another cloud provider in the future without experiencing issues such as high costs, legal constraints, technical incompatibilities [59]. For example, when a consumer buys WordPress Application on Bitnami, he is first provided two deployment offering options: single-tier and multi-tier.
Then he is provided several options to launch WordPress Application: Amazon web services, Google cloud platform, and Azure. WordPress Application can only be deployed on one of these three services. There are two machines that are similar on paper as they both have four cores. Amazon VM offers more memory, but the price is very simi- lar.
In fact, Amazon VM offers almost twice the blended compute capacity over 24 hours than its Google cloud equivalent but database technology of Google is quite better. In the first case, if a consumer has been using Google Cloud and he spots a great cloud service pricing from Amazon. He is not allowed to move cloud service running on Google Cloud to Amazon. Another reason is because cloud technologies are incompatible between Amazon and Google.
In the second case, it is impossible if WordPress App Server is hosted on Amazon and WordPress Database is hosted on iv Google Cloud to leverage the benefits of two cloud providers. Taking advantage of it is not going to be easy because before he know it, he will be locked into single cloud provider. This challenge can be overcome if the WordPress App Server and Wordpress Database could be spread across two cloud providers to benefit from each provider’s best technology and less VM capacity (cheaper but meets the need). More effectively, WordPress components should be described in an open standard so that other providers than those mentioned above can offer cloud services at competitive prices and better capacities, and its components could be easily ported to other cloud.
To deal with vendor lock-in problem, multi-cloud is the effective approach because a multi-cloud strategy enables consumers to select any cloud service to meet the re- quirements of a particular application or workload as well as porting cloud software to another cloud. In this way, we have an interesting ideal about a multi-cloud service delivery model that facilitates to distribute Software as a Service (SaaS) across various clouds as well as liberates cloud developers from being tied to proprietary technology ecosystems. To turn our idea into reality, we sketch O-Marketplace Model (multi- cloud marketplace model) and define Composable Application Model (component- based cloud application model). To demonstrate the practicality of two proposed model, research works are focused on as follows: (i) O-Marketplace Model, after analyzing the limitations of existing cloud service delivery methods, a multi-cloud service delivery method is proposed to overcome these limitations, and a promising multi-cloud marketplace model is built up.
(ii) Composable Application Model, we first build up its concept and its description method, then the experimentation is conducted by transform into TOSCA speci- fication to evaluate the feasibility of the proposed multi-cloud application model. Finally, relying on Composable Application Model and O-Marketplace context, some issues of cloud computing are tackled to prove the practicality of two pro- posed model such as: matchmaking for multi-cloud marketplace application, multi-cloud application portability, multi-cloud application auto-repairing. Keywords: Cloud computing, Vendor lock-in, multi-cloud environment, multi- cloud marketplace, multi-cloud service delivery, multi-cloud application, matchmak- ing, multi-cloud application portability, multi-cloud application auto-repairing, Com- posable Application Model, O-Marketplace, Blueprint. v CONTENTS DECLARATION OF AUTHORSHIP.
x LIST OF TABLES. xi LIST OF FIGURES .2 Thesis research issues and motivation .2 Composable Application Model .1 Overview of Cloud computing .2 Cloud environment classification .1 Single-cloud environment .2 Multi-cloud environment .3 The advantages of multi-cloud environment .2 Existing cloud service delivery models .1 Cloud service brokerage .1 Topology and Orchestration Specification for Cloud Applica- tion - TOSCA .2 Settling and Launching Service Applications - SALSA .1 Approaches for cloud application .2 Approaches for cloud application description .3 Approaches for matchmaking cloud services .4 Approaches for cloud portability .5 Approaches for cloud application repairing .2 Existing methods for delivering cloud services .1 Simple cloud service delivery method .2 Cloud service delivery through Cloud Brokerage .3 Cloud service delivery through Cloud Marketplace .1 The proposed cloud service delivery method for multi-cloud marketplace .2 Overall structure of O-Marketplace .3 The operation mechanism of O-Marketplace .4 The novel approach in SaaS provisioning of O-Marketplace .5 The feasibility of O-Marketplace Model .6 The goals of O-Marketplace. COMPOSABLE APPLICATION MODEL 52 4.2 General concept of CAM .3 Simple Definition for CAM .2 Abstract model of CAM .1 Multi-component cloud software model .4 Cloud Software Stack .5 Cloud Software Composition .4 Description Templates of CAM .1 CAM-based Multi-cloud Application Description Template .2 General Structure of Cloud Software Component Template .3 Simple Software Component Template .4 Cloud Software Stack Template .5 Cloud Software Composition Template .6 Platform Service Template .5 Experimentation of CAM .1 Overview of CAM-D to TOSCA Specification Transformation Method .2 Mapping to TOSCA .1 CAM-Based Wordpress Application Description .2 Transforming Wordpress Description Templates to TOSCA-Based specification .3 Deploying Wordpress Application on multi-cloud by SALSA .6 Applications of CAM in O-Marketplace context .1 CAM-based matchmaking method for O- Marketplace .1 The proposed approach for matchmaking method .2 CAM-based multi-cloud application portability .1 The proposed approach for multi-cloud application portability .2 The proposed method for auto-updating multi-cloud application blueprint .3 View updating program .3 CAM-based method for auto-repairing multi-cloud marketplace application .1 The proposed approach for auto-repairing multi-cloud application .2 Procedure of multi-cloud application auto-repairing 94 4.3 Re-deploying and re-configuring CAM-based cloud application .7 Discussions of CAM .1 The role of CAM in O-Marketplace model .2 The role of CAM in cloud application development. CONCLUSION AND PERSPECTIVES 99 5.
105 LIST OF PUBLICATIONS. 115 ix ABBREVIATIONS API Application Programing Interface AWS Amazone Web Services BXs Bidirectional Transformations CAM Composable Application Model CAM-D CAM-based Description Method CDMI Cloud Data Management Interface CRM Customer Relationship Management CSB Cloud Service Brokerage CSP Cloud Service Provider DB Database EC2 Elastic Computing Cloud I/O Input/Output IaaS Infrastructure as a Service IP Internet Protocol IT Information Technology JSON Java Script Object Notation OCCI Open Cloud Computing Interface OS Operation System OVF Open Virtualization Format PaaS Platform as a Service QoS Quality of Service RDBMS Relational Database Management System REST Representational State Transfer S3 Amazon Simple Storage Service SaaS Software as a Service SALSA Settling and Launching Service Applications SLA Service Level Agreement SQL Structured Query Language TOSCA Topology Ochestration Specification for Cloud Application VM Virtual Machine XML Extensible Markup Language YAML Yet Another Markup Language x LIST OF TABLES 2.1 Existing Cloud Marketplaces .2 The operation mechanism of O-Marketplace .1 The comparison between CAM-D and TOSCA Specification. 102 xi LIST OF FIGURES 1.1 The potential for vendor lock-in risks is exacerbated in the cloud (source [59]).1 Cloud Service Model (source [84]).2 Single cloud architecture.3 Multi-cloud architecture.4 Processes in a CSB platform (source [52]).5 High level architecture of Cloud Broker Service (source [20]).6 TOSCA Service Template overview (source [50]).7 Multi application levels and multi deployment stacks (source [48]).1 Simple cloud service delivery method.2 Cloud service delivery method through Cloud Brokerage.