Matchmaking for multi-cloud marketplace application

Abstract: Software as a Service has been developing according to the trend that leverages the advantage of multi-Cloud environment to avoid vendor lock-in problem. To consume cloud resource provided by various providers, cloud software should be decomposed into components which can be deployed across different clouds. Ideally, components of a componentbased cloud software are independently developed and offered through multi-cloud marketplace. To bring the highest benefit to consumers, there should be an efficient cost strategy for finding a group of compatible cloud platforms for their cloud softwares. In this paper, after redefining and developing simple formal definition for Composable Application Model (CAM), we present a matchmaking method that could be useful for verifying the correctness of software composition as well as for checking the correct deployment of a software composition on specified cloud platforms. As an illustration, we experimentally transform the cloud application model achieved by our matchmaking method into TOSCA-based specification template, which is known as a standard representation for multi-cloud applications

Matchmaking for multi-cloud marketplace application trang 1

Trang 1

Matchmaking for multi-cloud marketplace application trang 2

Trang 2

Matchmaking for multi-cloud marketplace application trang 3

Trang 3

Matchmaking for multi-cloud marketplace application trang 4

Trang 4

Matchmaking for multi-cloud marketplace application trang 5

Trang 5

Matchmaking for multi-cloud marketplace application trang 6

Trang 6

Matchmaking for multi-cloud marketplace application trang 7

Trang 7

Matchmaking for multi-cloud marketplace application trang 8

Trang 8

Matchmaking for multi-cloud marketplace application trang 9

Trang 9

Matchmaking for multi-cloud marketplace application trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 12 trang xuanhieu 2920
Bạn đang xem 10 trang mẫu của tài liệu "Matchmaking for multi-cloud marketplace application", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Matchmaking for multi-cloud marketplace application

Matchmaking for multi-cloud marketplace application
ce template. It is very efficient in software
Wordpress App
PHP Container
Wordpress DB
Apache Server
Ubuntu VM 
On Openstack
Ubuntu VM 
On Flexiant
MySQL RDBMS
Wordpress App Stack
Wordpress Composition
Group of Cloud platforms for Wordpress software
Wordpress DB Stack
Apache Stack
Figure 8. Wordpress Application represented in CAM.
provisioning, deployment and management of cloud appli-
cation. It enhances the portability of cloud application and
has been supported by many partners like IBM, Reb Hat,
Cisco, Citrix, EMC, etc.
Since TOSCA is currently a mature standard with a lot
of supporting tools for designing and orchestration. In this
paper, we select this standard as a target of the translation
to demonstrate the feasibility of our proposed composable
application model.
1) Method Overview: The major differences between CAM
specification and TOSCA specification are:
• TOSCA specification represents a complete blueprint
of a cloud application system including the software
and the cloud infrastructure/platform parts while CAM
separates these two parts into independent entities.
• TOSCA expresses the internal structure of a cloud
service by a topology template which is a graph repre-
senting software/hardware components (as nodes), and
relationship among these components (as edges). CAM
represents a cloud application in a nested manner.
Thus, we design the translation from a CAM specification
to TOSCA specification in a process of the following steps:
• First, we combine the cloud software and its com-
patible platform group into a single form of CAM
specification.
• Second, we flatten the nested structure of the CAM
specification into a graph representation. Nodes of the
graph correspond to simple components and platform,
and edges of the graph represent the relationships
among simple components and platforms. This transla-
tion is done recursively based on the nested structure
39
Research and Development on Information and Communication Technology
Simple components: 
 - Apache Server: 
 type: software 
 preqs: [Linux] 
 pcaps: [Apache] 
 - PhP Container: 
 type: software 
 preqs: [Apache] 
 pcaps: [PhP, Apache] 
 - WordpressApp: 
 type: software 
 preqs: [Apache, PhP] 
 sreqs: [WordpressDB] 
 - MySQLDB: 
 type: software 
 preqs: [Linux] 
 pcaps: [MySQL] 
 - WordpressDB: 
 type: software 
 preqs: [MySQL] 
 scaps: [WordpressDB] 
Stacks: 
 - PhP-Apache Stack: 
 type: stack 
 top: PhP Container 
 base: Apache Server 
 preqs: [Linux] 
 pcaps: [Apache, PhP] 
 - WordpressApp Stack: 
 type: stack 
 top: WordpressApp 
 base: Php-Apache Stack 
 preqs: [Linux] 
 sreqs: [WordpressDB] 
 - WordpressDB Stack: 
 type: stack 
 top: WordpressDB 
 base: MySQLDB 
 preqs: [Linux] 
 scaps: [WordpressDB] 
Compositions: 
 - Wordpress Composition: 
 type: composition 
 first: WordpressApp Stack 
 second: WordpressDB Stack 
 preqs: 
 - [Linux] 
 - [Linux] 
Platforms: 
 - UbuntuVM on Openstack: 
 Type: os 
 provider: OpenStack 
 pcaps: [Linux] 
 - UbuntuVM on Flexiant: 
 Type: os 
 provider: Flexiant 
 pcaps: [Linux] 
Wordpress Application: 
 software: Wordpress Composition 
 platforms: [UbuntuVM, UbuntuVM] 
Figure 9. Wordpress application specification.
of CAM specification. The relationships are derived
from the specifications of stacks and compositions.
• Finally, we map the resulting graph into TOSCA
topology template. Here, the most cryptic part is that
we have to map each node of the graph to a node
template of TOSCA, and each edge of the graph to a
relationship template of TOSCA.
The following sub-section demonstrating this process in a
particular example – the Wordpress application.
2. Experiment with Wordpress Application
A typical Wordpress application is represented in CAM
as shown in Figure 8. The specification of the Wordpress
application is written in YAML as shown in Figure 9. We
temporary ignore all implementation details of the cloud
software components but only focus on the specification
of their requirements and capabilities. If a property of a
component is missed from the specification, we consider
the value of this property is null or empty.
In the second step of the translation process, we flat-
ten the Wordpress Application into a graph representation
which is depicted in Figure 10. This translation ignores the
specifications of requirements and capabilities of software
stacks and software compositions. They are only used for
verifying the correctness of the combination and for check-
ing the compatibility between the software composition and
its underlying platforms.
Finally, we map the graph representation to TOSCA
topology template as shown in the following XML code:
Nodes: 
 - Apache Server: 
 type: SimpleComponent 
 preqs: [Linux] 
 pcaps: [Apache] 
 - PhP Container: 
 type: SimpleComponent 
 preqs: [Apache] 
 pcaps: [PhP, Apache] 
 - WordpressApp: 
 type: SimpleComponent 
 preqs: [Apache, PhP] 
 sreqs: [WordpressDB] 
 - MySQLDB: 
 type: SimpleComponent 
 preqs: [Linux] 
 pcaps: [MySQL] 
 - WordpressDB: 
 type: SimpleComponent 
 preqs: [MySQL] 
 scaps: [WordpressDB] 
 - UbuntuVMonOpenStack: 
 provider: OpenStack 
 pcaps: [Linux] 
 - UbuntuVMonFlexiant: 
 provider: Flexiant 
 pcaps: [Linux] 
Relationships: 
 - from: WordpressApp 
 to: PhP Container 
 type: host-on 
 - from: PhP Container 
 to: Apache Server 
 type: host-on 
 - from: Apache Server 
 to: UbuntuVMonOpenStack 
 type: host-on 
 - from: WordpressDB 
 to: MySQLRDBMS 
 type: host-on 
 - from: MySQLRDBMS 
 to: UbuntuVMonFlexiant 
 type: host-on 
 - from: WordpressApp 
 to: WordpressDB 
 type: connect-to 
Figure 10. Wordpress application graph.
<ns2: Definitions id=”Wordpress”
xmlns:ns2=”http :// docs. oasis−open.org/ tosca /ns/2011/12”
name=”Wordpress”>
<ns2:RelationshipTemplate
id=”WordpressApp HostOn PHPContainer”
type=”HOSTON”>
<ns2:RelationshipTemplate
id=”PHPContainer HostOn ApacheServer”
type=”HOSTON”>
<ns2:RelationshipTemplate
id=”ApacheServer HostOn UbuntuVM”
type=”HOSTON”>
<ns2:RelationshipTemplate
id=”WordpressDB HostOn MySQLDB”
type=”HOSTON”>
<ns2:RelationshipTemplate
id=”MySQLDB HostOn UbuntuVM” type=”HOSTON”>
<ns2:RelationshipTemplate
id=”WordpressApp ConnectTo WordpressDB”
type=”CONNECTTO”>
40
Vol. 2019, No. 1, September
...
...
...
...
...
...
<ns2:ArtifactTemplate
id=”Artifact 93f8753b−17ab−43c5−8f11−e3ec98fe3224”
type=”sh”>
...
...
As seen in the code above, all nodes of the graph
are mapped to Node Template of TOSCA, implementa-
tion details of the Node Template are omitted from the
specification for brevity. Edges of the graph are mapped
to Relationship Template. According to the original of the
edges, i.e., from a stack or from a composition, the type
of corresponding Relationship template will be given as
HOSTON or CONNECTTO.
Although CAM has not been fully developed, this
demonstration has proved the feasibility of the proposal
with distinct advantages.
V. CONCLUSION
In this study, we present a matchmaking method that
supports to find suitable cloud platforms, whose profiles
registered in a multi-cloud marketplace, to multi-component
cloud software. The goal of this work is to verify compat-
ibility among the components within a component-based
cloud application, as well as between the components
and their underlying runtime platforms. To implement this
idea, firstly, we redefine Composable Application Model
(CAM) that organizes multi-component cloud software in
a nested structure. Secondly, we develop an abstract model
of CAM which only covers the inter-dependency of the
components. We proposed validation rules for the CAM
components based on that type of dependency. Thirdly,
We proposed matchmaking algorithm which is the core of
brokerage mechanism of multi-cloud marketplace. Finally,
our proposal is validated by experimenting a transformation
from a specification of CAM into TOSCA specification.
To sum up, our work creates an effective brokerage
mechanism to retrieve optimal compatible platform so-
lutions for a specific multi-cloud software according to
consumer’s demand in the context of O-Marketplace. This
result is a premise for our future research related to Service
Level Agreement (SLA) in multi-cloud environment [24].
ACKNOWLEDGEMENT
This work is supported by Hanoi University of Science
and Technology under Project “Energy-aware workflow
service in cloud computing environment”, No. T2017-PC-
077. Simulations and technical realization were achieved
on the hardware equipment at the Center for Data and
Computation Technology, Hanoi University of Science and
Technology. We would like to thank all colleagues and
domain experts for collaborations and consultations.
REFERENCES
[1] A. Nayyar, Handbook of Cloud Computing, 04 2019.
[2] J. Guille´n, J. Miranda, J. M. Murillo, and C. Canal, “A
service-oriented framework for developing cross cloud mi-
gratable software,” Journal of Systems and Software, pp.
2294–2308, 2013.
[3] G. Baryannis, P. Garefalakis, K. Kritikos, K. Magoutis,
A. Papaioannou, D. Plexousakis, and C. Zeginis, “Lifecycle
management of service-based applications on multi-clouds,”
in Proceedings of the 2013 International workshop on Multi-
cloud applications and federated clouds (Multicloud’13),
2013, pp. 13–20.
[4] G. Copil, D. Moldovan, H.-L. Truong, and S. Dustdar,
“Multi-level elasticity control of cloud services,” in Service-
Oriented Computing, S. Basu, C. Pautasso, L. Zhang, and
X. Fu, Eds. Berlin, Heidelberg: Springer Berlin Heidelberg,
2013, pp. 429–436.
[5] D. Garlan, R. T. Monroe, and D. Wile, “Acme: Architectural
description of component-based systems,” in Foundations of
Component-Based Systems, G. T. Leavens and M. Sitaraman,
Eds. Cambridge University Press, 2000, pp. 47–68.
[6] B. Wallace, “A hole for every component, and every com-
ponent in its hole,” Existential Programming, 2010.
[7] Mcllroy and M. Douglas, “Mass produced software compo-
nents,” Scientific Affairs Division, NATO, p. 79, 1969.
[8] R. Niekamp, “Software component architecture,” Gestio´n de
Congresos - CIMNE/Institute for Scientific Computing, p. 4,
2011.
[9] H.-L. Huynh, H.-D. Nguyen, V.-T. Le, and T.-T. Nguyen,
“A composable application model for cloud marketplace,”
Journal of Vietnam Science and Technology, vol. 16, no. 5,
pp. 40–45, 2017.
[10] H.-L. Huynh, H.-D. Nguyen, V.-T. Le, and D.-H. Le, “To-
wards the cloud marketplace for multi-cloud infrastructures,”
in 18th Vietnam National Conference: Selected issues of
information technology and communication, 2015.
[11] S. Kolb and G. Wirtz, “Towards application portability in
platform as a service,” in Proceedings - IEEE 8th Interna-
tional Symposium on Service Oriented System Engineering,
SOSE 2014, 2014.
[12] C. Zeng, X. Guo, W. Ou, and D. Han, “Cloud computing
service composition and search based on semantic,” in Cloud
Computing, M. G. Jaatun, G. Zhao, and C. Rong, Eds.
41
Research and Development on Information and Communication Technology
Berlin, Heidelberg: Springer Berlin Heidelberg, 2009, pp.
290–300.
[13] B. I. Zilci, M. Slawik, and A. Ku¨pper, “Cloud service
matchmaking using constraint programming,” in 2015 IEEE
24th International Conference on Enabling Technologies:
Infrastructure for Collaborative Enterprises, June 2015, pp.
63–68.
[14] S. K. Garg, S. Versteeg, and R. Buyya, “SMICloud: A
framework for comparing and ranking cloud services,” in
2011 Fourth IEEE International Conference on Utility and
Cloud Computing, Dec 2011, pp. 210–218.
[15] F. DAndria, S. Bocconi, J. G. Cruz, J. Ahtes, and D. Zeginis,
“Cloud4SOA: Multi-cloud application management across
PaaS offerings,” in 2012 14th International Symposium on
Symbolic and Numeric Algorithms for Scientific Computing,
Sep. 2012, pp. 407–414.
[16] S. Garcı´a-Go´mez, M. Jime´nez-Gan˜a´n, Y. Taher, C. Momm,
F. Junker, J. Bı´ro´, A. Menychtas, V. Andrikopoulos, and
S. Strauch, “Challenges for the comprehensive management
of cloud services in a PaaS framework,” Scalable Comput-
ing: Practice and Experience, vol. 13, 2012.
[17] W. Elshareef, H. A. Ali, and A. Y. Haikal, “A matchmaking
strategy of mixed resource on cloud computing environ-
ment,” International Journal OF Scientific and Technology
Research, vol. 4, 2015.
[18] K. Sledziewski, B. Bordbar, and R. Anane, “A DSL-
based approach to software development and deployment
on cloud,” in 2010 24th IEEE International Conference on
Advanced Information Networking and Applications, April
2010, pp. 414–421.
[19] E. Brandtzaeg, S. Mosser, and P. Mohagheghi, “Towards
CloudML, a model-based approach to provision resources
in the clouds,” in 8th European Conference on Modelling
Foundations and Applications (ECMFA), 2012, p. 18–27.
[20] “OpenStack HEAT URL,” accessed: 2019-04-26. [Online].
Available: https://docs.openstack.org/heat/latest
[21] “Juju Charms URL,” accessed: 2019-04-26. [Online].
Available: https://jujucharms.com
[22] K. Saatkamp, U. Breitenbu¨cher, O. Kopp, and F. Ley-
mann, “Topology splitting and matching for multi-cloud
deployments,” in Service-Oriented Computing-ICSOC 2017
Workshops, 2017, pp. 379–383.
[23] OASIS, “Topology and orchestration specification for cloud
applications version 1.0,” Organization for the Advacement
of Structured Information Standards, 2013.
[24] D. Kourtesis, K. Bratanis, A. Friesen, Y. Verginadis, A. J. H.
Simons, A. Rossini, A. Schwichtenberg, and P. Gouvas,
“Brokerage for quality assurance and optimisation of cloud
services: An analysis of key requirements,” in Service-
Oriented Computing – ICSOC 2013 Workshops, A. R. Lo-
muscio, S. Nepal, F. Patrizi, B. Benatallah, and I. Brandic´,
Eds. Cham: Springer International Publishing, 2014, pp.
150–162.
Huynh Hoang Long received B.Sc. de-
gree from Nhatrang University in 2008
and M.Sc. degree from Hanoi University
of Science and Technology in 2012. His
research interest includes cloud computing.
Nguyen Huu Duc received Ph.D. de-
gree in Computer Science from Japan Ad-
vanced Institute of Science and Technology
(JAIST), Japan, in 2006. He is currently the
director of the Center for Data and Com-
putation Technologies, Hanoi University of
Science and Technology.
His main research topics include com-
piler construction, high performance computing, distributed sys-
tems and big data.
Le Trong Vinh received Ph.D. degree
in Computer Science from Japan Ad-
vanced Institute of Science and Technol-
ogy (JAIST), Japan, in 2006. He is cur-
rently Associate Professor and the director
of the Center for Information Technology
and Communication, University of Science,
Vietnam National University, Hanoi.
His main research topics include theory of algorithms, com-
puter networks.
42

File đính kèm:

  • pdfmatchmaking_for_multi_cloud_marketplace_application.pdf