Kurzfassung | Cloud Computing has become highly market penetrating for its economic and technical benefits such as elasticity, outsourcing, pay-per-use pricing models, scalability, and self-service usage of services. Automating the provisioning, configuration, and management of complex applications is one of the most difficult challenges in Cloud Computing because each technology and API comes with individual formats, domain-specific languages, invocation mechanisms, and prerequisites. Topology and Orchestration Specification for Cloud Applications (TOSCA) enables the standardized descriptions of Cloud applications and their management to overcome these challenges. A TOSCA application contains all software artifacts required to provision, operate, and manage the application, which can be run in standard-compliant TOSCA runtime environments which can be hosted across different providers. The OpenTOSCA ecosystem is one of the state of art runtime environments for TOSCA-based applications. It enables fully automated deployment and management of applications defined in TOSCA. TOSCA specifies two approaches for processing applications: imperative processing and declarative processing. The imperative approach requires an application to include imperative plans, which are executable process models, for different purposes such as provision, scale, migration, and termination. The imperative approach enables the full customization of automated management of complex applications. However, manual generation of these plans is not only error-prone but also time-consuming due to the immense complexity of tasks and heterogeneous components involved in the application. On the other hand, the declarative approach uses TOSCA runtime environments to infer the management logic from the topology of components in an application without the need for predefined plans. With the declarative approach, modelers may concentrate on the application’s structure without having to create plans. Because application developers are unable to explicitly describe every functionality, the declarative approach is confined to simple application management. Since the two approaches do not exclude each other, it is preferable to provide an automated plan generation that can benefit from both approaches. The benefit is that the explicit declarative modeling of a complex application’s structure is preserved while providing the developers with the ability to customize the generated imperative plans for individual requirements without creating the plan completely. Business Process Model and Notation (BPMN), a workflow language with a standardized graphical notation and well-defined execution semantics, fits well in the context of model plans. As a result, a TOSCA runtime that supports automated plan generation and execution in BPMN is extremely desirable. This work develops the concepts for automatically generating imperative provision plans in exe- cutable BPMN for cloud applications based on the TOSCA standard using a hybrid approach. The graphical component of the BPMN plan is generated in human-understandable execution order, which enables the application developer to customize the generated plan for individual requirements. This hybrid approach benefits the strengths of imperative and declarative processing. A prototype was developed based on the OpenTOSCA ecosystem to test the feasibility of the concepts. The concept and implementation for BPMN plan generation complete OpenTOSCA ecosystem with end-to-end support in BPMN, from modeling to provisioning.
|