A TOSCA-based Programming Model for Interacting Components of Automatically Deployed Cloud and IoT Applications

Michael Zimmermann, Uwe Breitenbücher, Frank Leymann

Abstract

Cloud applications typically consist of multiple components interacting with each other. Service-orientation, standards such as WSDL, and the workflow technology provide common means to enable the interaction between these components. Nevertheless, during the automated application deployment, endpoints of interacting components, e.g., URLs of deployed services, still need to be exchanged: the components must be wired. However, this exchange mainly depends on the used (i) middleware technologies, (ii) programming languages, and (iii) deployment technologies, which limits the application’s portability and increases the complexity of implementing components. In this paper, we present a programming model for easing the implementation of interacting components of automatically deployed applications. The presented programming model is based on the TOSCA standard and enables invoking components by their identifiers and interface descriptions contained in the application’s TOSCA model. The approach can be applied to Cloud and IoT applications, i.e., also software hosted on physical devices may use the approach to call other application components. To validate the practical feasibility of the approach, we present a system architecture and prototype based on OpenTOSCA.

References

  1. Bernstein, D. (2014). Containers and Cloud: From LXC to Docker to Kubernetes. IEEE Cloud Computing, 1(3):81-84.
  2. 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. In Proceedings of the 11th International Conference on Service-Oriented Computing (ICSOC 2013), pages 692-695. Springer.
  3. Binz, T., Breitenbücher, U., Kopp, O., and Leymann, F. (2014). TOSCA: Portable Automated Deployment and Management of Cloud Applications, pages 527-549. Advanced Web Services. Springer.
  4. Breitenbücher, U., Binz, T., Képes, K., Kopp, O., Leymann, F., and Wettinger, J. (2014a). Combining Declarative and Imperative Cloud Application Provisioning based on TOSCA. In International Conference on Cloud Engineering (IC2E 2014), pages 87-96. IEEE.
  5. Breitenbücher, U., Binz, T., Kopp, O., and Leymann, F. (2014b). Vinothek - A Self-Service Portal for TOSCA. In Proceedings of the 6th Central-European Workshop on Services and their Composition (ZEUS 2014), pages 69-72. CEUR-WS.org.
  6. Breitenbücher, U., Binz, T., Kopp, O., Leymann, F., and Schumm, D. (2012). Vino4TOSCA: A Visual Notation for Application Topologies based on TOSCA. In On the Move to Meaningful Internet Systems: OTM 2012 (CoopIS 2012), pages 416-424. Springer.
  7. Breitenbücher, U., Binz, T., Kopp, O., Leymann, F., and Wettinger, J. (2013). Integrated Cloud Application Provisioning: Interconnecting Service-Centric and ScriptCentric Management Technologies. In On the Move to Meaningful Internet Systems: OTM 2013 Conferences (CoopIS 2013), pages 130-148. Springer.
  8. Burns, B., Grant, B., Oppenheimer, D., Brewer, E., and Wilkes, J. (2016). Borg, Omega, and Kubernetes. Communications of the ACM, 59(5):50-57.
  9. Chappell, D. A. (2004). Enterprise Service Bus. O'Reilly.
  10. Columbus, L. (2016). Roundup Of Cloud Computing Forecasts And Market Estimates, 2016. http:// www.forbes.com/sites/louiscolumbus/2016/03/13/
  11. da Silva, A. C. F., Breitenbücher, U., Képes, K., Kopp, O., and Leymann, F. (2016). OpenTOSCA for IoT: Automating the Deployment of IoT Applications based on the Mosquitto Message Broker. In Proceedings of the 6th International Conference on the Internet of Things (IoT 2016), pages 181-182. ACM.
  12. De Antonellis, V., Melchiori, M., De Santis, L., Mecella, M., Mussi, E., Pernici, B., and Plebani, P. (2006). A layered architecture for flexible Web service invocation. Software: Practice and Experience, 36(2):191-223.
  13. Guth, J., Breitenbücher, U., Falkenthal, M., Leymann, F., and Reinfurt, L. (2016). Comparison of IoT Platform Architectures: A Field Study based on a Reference Architecture. In Proceedings of the International Conference on Cloudification of the Internet of Things (CIoT 2016). IEEE.
  14. Happ, D. and Wolisz, A. (2016). Limitations of the Pub/Sub Pattern for Cloud Based IoT and Their Implications. In 2nd Int. Conf. on Cloudification of the Internet of Things (CIoT'16). IEEE.
  15. Kopp, O., Binz, T., Breitenbücher, U., and Leymann, F. (2013). Winery - A Modeling Tool for TOSCA-based Cloud Applications. In Proceedings of the 11th International Conference on Service-Oriented Computing (ICSOC 2013), pages 700-704. Springer.
  16. Leitner, P., Rosenberg, F., and Dustdar, S. (2009). Daios: Efficient Dynamic Web Service Invocation. Internet Computing, IEEE, 13(3):72-80.
  17. Leymann, F. (2009). Cloud Computing: The Next Revolution in IT. In Proceedings of the 52th Photogrammetric Week, pages 3-12. Wichmann Verlag.
  18. Mohaan, M. and Raithatha, R. (2014). Learning Ansible. Packt Publishing.
  19. Nagano, S., Hasegawa, T., Ohsuga, A., and Honiden, S. (2004). Dynamic Invocation Model of Web Services Using Subsumption Relations. In Proceedings of the International Conference on Web Services (ICWS 2004), pages 150-156. IEEE.
  20. OASIS (2007). Web Services Business Process Execution Language (WS-BPEL) Version 2.0. Organization for the Advancement of Structured Information Standards (OASIS).
  21. OASIS (2013a). Topology and Orchestration Specification for Cloud Applications (TOSCA) Primer Version 1.0. Organization for the Advancement of Structured Information Standards (OASIS).
  22. OASIS (2013b). Topology and Orchestration Specification for Cloud Applications (TOSCA) Version 1.0. Organization for the Advancement of Structured Information Standards (OASIS).
  23. OMG (2011). Business Process Model and Notation (BPMN) Version 2.0. Object Management Group (OMG).
  24. Pahl, C. (2015). Containerisation and the PaaS Cloud. IEEE Cloud Computing, 2(3):24-31.
  25. Taylor, M. and Vargo, S. (2014). Learning Chef: A Guide to Configuration Management and Automation . O'Reilly.
  26. Tosatto, A., Ruiu, P., and Attanasio, A. (2015). ContainerBased Orchestration in Cloud: State of the Art and Challenges. In Ninth International Conference on Complex, Intelligent, and Software Intensive Systems (CISIS 2015), pages 70-75. IEEE.
  27. W3C (2001). Web Service Definition Language (WSDL) Version 1.1. World Wide Web Consortium.
  28. W3C (2004). Web Services Addressing (WS-Addressing). World Wide Web Consortium.
  29. 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 (CLOSER 2014), pages 559-568. SciTePress.
Download


Paper Citation


in Harvard Style

Zimmermann M., Breitenbücher U. and Leymann F. (2017). A TOSCA-based Programming Model for Interacting Components of Automatically Deployed Cloud and IoT Applications . In Proceedings of the 19th International Conference on Enterprise Information Systems - Volume 2: ICEIS, ISBN 978-989-758-248-6, pages 121-131. DOI: 10.5220/0006332501210131


in Bibtex Style

@conference{iceis17,
author={Michael Zimmermann and Uwe Breitenbücher and Frank Leymann},
title={A TOSCA-based Programming Model for Interacting Components of Automatically Deployed Cloud and IoT Applications},
booktitle={Proceedings of the 19th International Conference on Enterprise Information Systems - Volume 2: ICEIS,},
year={2017},
pages={121-131},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0006332501210131},
isbn={978-989-758-248-6},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 19th International Conference on Enterprise Information Systems - Volume 2: ICEIS,
TI - A TOSCA-based Programming Model for Interacting Components of Automatically Deployed Cloud and IoT Applications
SN - 978-989-758-248-6
AU - Zimmermann M.
AU - Breitenbücher U.
AU - Leymann F.
PY - 2017
SP - 121
EP - 131
DO - 10.5220/0006332501210131