Combining TOSCA and BPMN to Enable Automated Cloud Service Provisioning

Domenico Calcaterra, Vincenzo Cartelli, Giuseppe Di Modica, Orazio Tomarchio

Abstract

The Cloud computing paradigm has kept its promise to transform computing resources into utilities ready to be consumed in a dynamic and flexible way, on an “as per need” basis. The next big challenge cloud providers are facing is the capability of automating the internal operational processes that need to be run in order to efficiently serve the increasing customers’ demand. When a new cloud service request has to be served, there is a bunch of operations the provider needs to carry out in order to get the requested cloud service up and ready for usage. This paper investigates the automation of the “provisioning” activities that must be put into place in order to build up a cloud service. Those activities range from the procurement of computing resources to the deployment of a web application, passing through the installation and configuration of third party softwares and libraries that the web application depends upon in order to properly work. Leveraging on a well-known specification used for the representation of a cloud application’s structure (TOSCA), we designed and implemented an orchestrator capable of automating and putting in force, in the correct timing, the sequence of tasks building up the cloud application in a step-by-step fashion. The novelty in the followed approach is represented by the definition of a converter which takes as input a TOSCA template and produces a workflow that is ready to be executed by a workflow engine. The BPMN notation was used to represent both the workflow and the data that enrich the workflow. To support the viability of the proposed idea, a use case was developed and discussed in the paper.

References

  1. Amazon (2016). Amazon CloudFormation. https://aws.amazon.com/cloudformation/. Last accessed on 15-02-2017.
  2. Bassiliades, N., Symeonidis, M., Meditskos, G., Kontopoulos, E., Gouvas, P., and Vlahavas, I. (2017). A semantic recommendation algorithm for the paasport platform-as-a-service marketplace. Expert Systems with Applications, 67:203 - 227.
  3. Binz, T., Breitenbücher, U., Haupt, F., Kopp, O., Leymann, F., Nowak, A., and Wagner, S. (2013). OpenTOSCA - A Runtime for TOSCA-Based Cloud Applications , pages 692-695. Springer Berlin Heidelberg, Berlin, Heidelberg.
  4. Bousselmi, K., Brahmi, Z., and Gammoudi, M. M. (2014). Cloud services orchestration: A comparative study of existing approaches. In IEEE 28th International Conference on Advanced Information Networking and Applications Workshops, (WAINA 2014), pages 410-416.
  5. Breitenbücher, U., Binz, T., Kopp, O., Leymann, F., and Wettinger, J. (2015). A modelling concept to integrate declarative and imperative cloud application provisioning technologies. In Proceedings of the 5th International Conference on Cloud Computing and Services Science, pages 487-496.
  6. Brogi, A., Carrasco, J., Cubo, J., Nitto, E. D., Durán, F., Fazzolari, M., Ibrahim, A., Pimentel, E., Soldani, J., Wang, P., and D'Andria, F. (2015). Adaptive management of applications across multiple clouds: The seaclouds approach. CLEI Electron. J., 18(1).
  7. Chef (2016). Devops Chef. https://www.chef.io/solutions/devops/. Last accessed on 15-02-2017.
  8. Cisco (2016). Cisco Intelligent Automation for Cloud (IAC). http://www.cisco.com/c/en/us/products/cloudsystems-management/intelligent-automationcloud/index.html. Last accessed on 15-02-2017.
  9. Docker (2017). Docker Compose. https://docs.docker.com/compose/. Last accessed on 15-02-2017.
  10. Ferry, N., Almeida, M., and Solberg, A. (2017). The MODAClouds Model-Driven Development, pages 23- 33. Springer International Publishing, Cham.
  11. GigaSpaces (2016). Cloudify. http://getcloudify.org/. Last accessed on 15-02-2017.
  12. HP (2016). HP Cloud Service Automation. http://www8.hp.com/it/it/software-solutions/cloudservice-automation/. Last accessed on 15-02-2017.
  13. IBM (2016). IBM Cloud Orchestrator. http://www03.ibm.com/software/products/it/ibm-cloudorchestrator. Last accessed on 15-02-2017.
  14. Juju (2016). Juju charms. https://jujucharms.com/. Last accessed on 15-02-2017.
  15. Katsaros, G., Menzel, M., Lenk, A., Revelant, J. R., Skipp, R., and Eberhardt, J. (2014). Cloud application portability with tosca, chef and openstack. In Proceedings of the 2014 IEEE International Conference on Cloud Engineering, IC2E 7814, pages 295-302, Washington, DC, USA. IEEE Computer Society.
  16. Kopp, O., Binz, T., Breitenbücher, U., and Leymann, F. (2012). BPMN4TOSCA: A Domain-Specific Language to Model Management Plans for Composite Applications, pages 38-52. Springer Berlin Heidelberg, Berlin, Heidelberg.
  17. lxml (2016). lxml project. http://lxml.de/. Last accessed on 15-02-2017.
  18. Menychtas, A., Konstanteli, K., Alonso, J., OrueEchevarria, L., Gorron˜ogoitia, J., Kousiouris, G., Santzaridou, C., Brunelière, H., Pellens, B., Stuer, P., Strauß, O., Senkova, T., and Varvarigou, T. A. (2014). Software modernization and cloudification using the artist migration methodology and framework. Scalable Computing: Practice and Experience, 15(2).
  19. OASIS (2007). Web Services Business Process Execution Language Version 2.0. https://www.oasisopen.org/committees/download.php/23964/wsbpelv2.0-primer.htm. Last accessed on 15-02-2017.
  20. OASIS (2013). Topology and Orchestration Specification for Cloud Applications Version 1.0. http://docs.oasisopen.org/tosca/TOSCA/v1.0/os/TOSCA-v1.0- os.html. Last accessed on 15-02-2017.
  21. OASIS (2014). Cloud Application Management for Platforms Version 1.1. http://docs.oasisopen.org/camp/camp-spec/v1.1/camp-specv1.1.html. Last accessed on 15-02-2017.
  22. OASIS (2015). TOSCA Simple Profile in YAML Version 1.0. http://docs.oasis-open.org/tosca/TOSCA-SimpleProfile-YAML/v1.0/csprd01/TOSCA-Simple-ProfileYAML-v1.0-csprd01.html. Last accessed on 15-02-2017.
  23. OMG (2011). Business Process Model and Notation (BPMN 2.0). http://www.omg.org/spec/BPMN/2.0/. Last accessed on 15-02-2017.
  24. OpenStack (2016). OpenStack Heat. https://wiki.openstack.org/wiki/Heat. Last accessed on 15-02-2017.
  25. OpenStack (2016). OpenStack project. https://github.com/openstack/tosca-parser. Last accessed on 15-02-2017.
  26. OpenTOSCA (2015). OpenTOSCA project. https://github.com/CloudCycle2/YAML Transformer. Last accessed on 15-02-2017.
  27. Puppet (2016). Puppet. https://puppet.com/. Last accessed on 15-02-2017.
  28. Ranjan, R., Benatallah, B., Dustdar, S., and Papazoglou, M. P. (2015). Cloud Resource Orchestration Programming: Overview, Issues, and Directions. IEEE Internet Computing, 19:46-56.
  29. RedHat (2016). RedHat CloudForms. https://www.redhat.com/it/technologies/ management/cloudforms. Last accessed on 15-02- 2017.
  30. Rightscale (2016). Rightscale Cloud Management Platform. http://www.rightscale.com/why-cloudmanagement-platform/benefits. Last accessed on 15- 02-2017.
  31. Rossini, A. (2016). Cloud Application Modelling and Execution Language (CAMEL) and the PaaSage Workflow , pages 437-439. Springer International Publishing, Cham.
  32. The Apache Software Foundation (2016). The Apache Brooklyn project. https://brooklyn.apache.org/. Last accessed on 15-02-2017.
  33. Tosatto, A., Ruiu, P., and Attanasio, A. (2015). ContainerBased Orchestration in Cloud: State of the Art and Challenges. In 9th International Conference on Complex, Intelligent, and Software Intensive Systems, (CISIS 2015), pages 70-75.
  34. Wettinger, J., Binz, T., Breitenbücher, U., Kopp, O., Leymann, F., and Zimmermann, M. (2014). Unified invocation of scripts and services for provisioning, deployment, and management of cloud applications based on tosca. In Proceedings of the 4th International Conference on Cloud Computing and Services Science, pages 559-568.
  35. Wettinger, J., Breitenbücher, U., Kopp, O., and Leymann, F. (2016). Streamlining DevOps automation for Cloud applications using TOSCA as standardized metamodel . Future Generation Computer Systems, 56:317 - 332.
Download


Paper Citation


in Harvard Style

Calcaterra D., Cartelli V., Di Modica G. and Tomarchio O. (2017). Combining TOSCA and BPMN to Enable Automated Cloud Service Provisioning . In Proceedings of the 7th International Conference on Cloud Computing and Services Science - Volume 1: CLOSER, ISBN 978-989-758-243-1, pages 187-196. DOI: 10.5220/0006304701870196


in Bibtex Style

@conference{closer17,
author={Domenico Calcaterra and Vincenzo Cartelli and Giuseppe Di Modica and Orazio Tomarchio},
title={Combining TOSCA and BPMN to Enable Automated Cloud Service Provisioning},
booktitle={Proceedings of the 7th International Conference on Cloud Computing and Services Science - Volume 1: CLOSER,},
year={2017},
pages={187-196},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0006304701870196},
isbn={978-989-758-243-1},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 7th International Conference on Cloud Computing and Services Science - Volume 1: CLOSER,
TI - Combining TOSCA and BPMN to Enable Automated Cloud Service Provisioning
SN - 978-989-758-243-1
AU - Calcaterra D.
AU - Cartelli V.
AU - Di Modica G.
AU - Tomarchio O.
PY - 2017
SP - 187
EP - 196
DO - 10.5220/0006304701870196