1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3 .. Copyright 2018 Huawei Technologies Co., Ltd.
11 .. image:: ../images/SO_Architecture_1.png
16 .. image:: ../images/SO_Architecture_Internal.png
23 RESTful interface to northbound clients
25 * Handle service-level and infrastructure (VNF & network) requests
28 * “Service Instantiation API”
30 Model-driven recipe selection
31 * Use SO Catalog to map input requests to BPMN flows
32 * Dynamic lookup based on service-model + action
33 * Input data forwarded to BPMN flow
35 Track open and completed requests via SO Request DB
37 Multiple API-H modules may support different APIs
39 **BPMN Execution Engine**
41 Open-source Camunda platform
42 * Support BPMN 2.0 service recipes
44 Expose RESTful interface to API-H (unique path per recipe)
46 Make use of common “building block” sub-flows
48 Sequence orchestration steps for each Resource in the recipe
49 * Request and configure network resources via SDN-C
50 * Manage cloud resources via PO (OpenStack)
51 * Update inventory via A&AI
53 Perform error handling/rollback
57 Interfaces to lower level controllers and other ONAP components
58 * Platform Orchestrator, SDN-Controller, APP-Controller, VFC-Controllers, Multi-Cloud
59 * Hides the details of complex interfaces (e.g. OpenStack APIs)
60 * Expose interfaces to BPMN flows as SOAP or REST APIs
61 * Support synchronous and asynchronous operations
63 Provided as part of SO platform for use by all BPMN flows
65 Use SO Catalog to map resource requests to a recipe/template
68 * Catalog templates may be updated via self-service (outside of release cycles)
69 * Merge input parameters with templates at run-time
74 * Tracks open and completed requests
77 * SO view of the SDC Catalog
78 * service and resource models, recipes, and templates
79 * Populated via SDC distribution service from TOSCA models
82 * Maintain state for BPMN flows
83 * Supports multiple active engines
85 **SDC Distribution Client**
87 Receive updated service models from SDC
88 * Event-bus notifications when new models available
89 * HTTP retrieval of models (TOSCA) and artifacts (Heat)
91 Receive distributions as TOSCA models
95 Support self-service updates to models and artifacts
99 Monitor BPMN Workflow execution by providing
100 * Service list search based on search criteria
102 * Service Process Instance Rendering and Detail
106 Support external SVNFMs through SOL003 APIs
107 * Create, Instantiate, Terminate and Delete VNF, including Granting, Subscription and Lifecycle Notifications
108 * Tracking capability which VNFM instance has handled with which VNF instance
109 * BPMN Building Block workflows and Java-based recipes for VNF LCM
110 * VNFM Simulator for validating SO VNFM Adapter NBI and SBI for integration testing
112 Third Party and Open Source
113 ---------------------------
116 Camunda (open source)
118 **Other Open Source Components of Note:**
121 Openstack Java SDK (“woorea”)