Lusheng Ji | 72c4fba | 2017-10-10 18:12:22 +0000 | [diff] [blame] | 1 | .. This work is licensed under a Creative Commons Attribution 4.0 International License. |
| 2 | .. http://creativecommons.org/licenses/by/4.0 |
Lusheng Ji | eaac78d | 2018-06-06 00:20:03 -0400 | [diff] [blame] | 3 | |
| 4 | |
Lusheng Ji | 72c4fba | 2017-10-10 18:12:22 +0000 | [diff] [blame] | 5 | Architecture |
| 6 | ============ |
| 7 | |
Vijay VK | edaf8b1 | 2019-05-23 22:02:50 +0100 | [diff] [blame] | 8 | Data Collection Analytics and Events (DCAE) is the primary data collection and analysis system of ONAP. DCAE architecture comprises of DCAE Platform and |
| 9 | DCAE Service components making DCAE flexible, elastic, and expansive enough for supporting the potentially infinite number of ways of constructing intelligent |
| 10 | and automated control loops on distributed and heterogeneous infrastructure. |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 11 | |
Vijay VK | edaf8b1 | 2019-05-23 22:02:50 +0100 | [diff] [blame] | 12 | DCAE Platform supports the functions to deploy, host and perform LCM applications of Service components. DCAE Platform components enable model driven deployment of |
| 13 | service components and middleware infrastructures that service components depend upon, such as special storage and computation platforms. When triggered by an |
| 14 | invocation call (such as CLAMP or via DCAE Dashboard), DCAE Platform follows the TOSCA model of the control loop that is specified by the triggering call, |
| 15 | interacts with the underlying networking and computing infrastructure such as OpenSatck installations and Kubernetes clusters to deploy and configure the virtual |
| 16 | apparatus (i.e. the collectors, the analytics, and auxiliary microservices) that are needed to form the control loop, at locations that requested. |
| 17 | DCAE Platform also provisions DMaaP topics and manages the distribution scopes of the topics following the prescription of the control loop model by interacting |
| 18 | with controlling function of DMaaP. |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 19 | |
Vijay VK | edaf8b1 | 2019-05-23 22:02:50 +0100 | [diff] [blame] | 20 | DCAE Service components are the functional entities that realize the collection and analytics needs of ONAP control loops. They include the collectors for various |
| 21 | data collection needs, event processors for data standardization, analytics that assess collected data, and various auxiliary microservices that assist data |
| 22 | collection and analytics, and support other ONAP functions. Service components and DMaaP buses form the "data plane" for DCAE, where DCAE collected data is |
| 23 | transported among different DCAE service components. |
Vijay VK | f9e4344 | 2019-05-22 22:10:29 +0100 | [diff] [blame] | 24 | |
Vijay VK | a46f7fe | 2019-06-10 15:57:41 +0100 | [diff] [blame] | 25 | DCAE use Consul's distributed K-V store service to manage component configurations where each key is based on the unique identity of a DCAE component (identified by ServiceComponentName), and the value is the configuration for the corresponding component. The K-V store for each service components is created during deployment. DCAE platform creates and updates the K-V pairs based on information provided as part of the control loop blueprint deployment, or through a notification/trigger received from other ONAP components such as Policy Framework and CLAMP. Either through periodically polling or proactive pushing, the DCAE components get the configuration updates in realtime and apply the configuration updates. DCAE Platform also offers dynamic template resolution for configuration parameters that are dynamic and only known by the DCAE platform, such as dynamically provisioned DMaaP topics. This approach standardizes component deployment and configuration management for DCAE service components in multi-site deployment. |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 26 | |
| 27 | |
Vijay VK | 6b0fa46 | 2019-05-20 16:06:11 +0100 | [diff] [blame] | 28 | DCAE R4 Components |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 29 | ------------------ |
| 30 | |
Vijay VK | 6b0fa46 | 2019-05-20 16:06:11 +0100 | [diff] [blame] | 31 | The following list displays the details of what are included in ONAP DCAE R4. All DCAE components are offered as Docker containers. Following ONAP level deployment methods, these components can be deployed as Kubernetes Deployments and Services. |
Lusheng Ji | 6553a13 | 2017-10-12 02:47:00 +0000 | [diff] [blame] | 32 | |
| 33 | - DCAE Platform |
| 34 | - Core Platform |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 35 | - Cloudify Manager: TOSCA model executor. Materializes TOSCA models of control loop, or Blueprints, into properly configured and managed virtual DCAE functional components. |
Vijay VK | edaf8b1 | 2019-05-23 22:02:50 +0100 | [diff] [blame] | 36 | - Plugins (K8S, Dmaap, Policy, Clamp, Postgres) |
Lusheng Ji | 6553a13 | 2017-10-12 02:47:00 +0000 | [diff] [blame] | 37 | - Extended Platform |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 38 | - Configuration Binding Service: Agent for service component configuration fetching; providing configuration parameter resolution. |
| 39 | - Deployment Handler: API for triggering control loop deployment based on control loop's TOSCA model. |
| 40 | - Policy Handler: Handler for fetching policy updates from Policy engine; and updating the configuration policies of KV entries in Consul cluster KV store for DCAE components. |
| 41 | - Service Change Handler: Handler for interfacing with SDC; receiving new TOSCA models; and storing them in DCAE's own inventory. |
| 42 | - DCAE Inventory-API: API for DCAE's TOSCA model store. |
| 43 | - Platform services |
| 44 | - Consul: Distributed service discovery service and KV store. |
Donald Hunter | a5683c6 | 2018-11-06 22:54:51 +0000 | [diff] [blame] | 45 | - PNDA: Platform for Network Data Analytics. |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 46 | - Postgres Database: DCAE's TOSCA model store. |
| 47 | - Redis Database: DCAE's transactional state store, used by TCA for supporting persistence and seamless scaling. |
Lusheng Ji | 6553a13 | 2017-10-12 02:47:00 +0000 | [diff] [blame] | 48 | |
| 49 | - DCAE Services |
| 50 | - Collectors |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 51 | - Virtual Event Streaming (VES) collector |
| 52 | - SNMP Trap collector |
Vijay VK | 2648c6d | 2018-09-19 04:30:37 +0100 | [diff] [blame] | 53 | - High-Volume VES collector (HV-VES) |
| 54 | - DataFile collector |
Vijay VK | f9e4344 | 2019-05-22 22:10:29 +0100 | [diff] [blame] | 55 | - RESTConf collector |
Lusheng Ji | 6553a13 | 2017-10-12 02:47:00 +0000 | [diff] [blame] | 56 | - Analytics |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 57 | - Holmes correlation analytics |
Vijay VK | 2648c6d | 2018-09-19 04:30:37 +0100 | [diff] [blame] | 58 | - CDAP based Threshold Crosssing Analytics application (tca) |
Vijay VK | f9e4344 | 2019-05-22 22:10:29 +0100 | [diff] [blame] | 59 | - Heartbeat Services |
| 60 | - SON-Handler Service |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 61 | - Microservices |
| 62 | - PNF Registration Handler |
Vijay VK | f9e4344 | 2019-05-22 22:10:29 +0100 | [diff] [blame] | 63 | - VES Mapper Service |
| 64 | - PM-Mapper Service |
| 65 | - BBS-EventProcessor Service |
| 66 | |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 67 | |
Vijay VK | f9e4344 | 2019-05-22 22:10:29 +0100 | [diff] [blame] | 68 | The figure below shows the DCAE R4 architecture and how the components work with each other. The components on the right constitute the Platform/controller components which are statically deployed. The components on the right represent the services which can be both deployed statically or dynamically (via CLAMP) |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 69 | |
Vijay VK | 6b0fa46 | 2019-05-20 16:06:11 +0100 | [diff] [blame] | 70 | .. image:: images/R4_architecture_diagram.png |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 71 | |
| 72 | |
| 73 | Deployment Scenarios |
| 74 | -------------------- |
| 75 | |
Vijay VK | f9e4344 | 2019-05-22 22:10:29 +0100 | [diff] [blame] | 76 | Because DCAE service components are deployed on-demand following the control loop needs for managing ONAP deployed services, DCAE must support dynamic and on-demand deployment of service components based on ONAP control loop demands. This is why all other ONAP components are launched from the ONAP level method, DCAE only deploys a subset of its components during this ONAP deployment process and rest of DCAE components will be deployed on-demand based on usecase needs triggered by control loop request originated from CLAMP, or even by operator manually invoking DCAE's deployment API call. |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 77 | |
Vijay VK | f9e4344 | 2019-05-22 22:10:29 +0100 | [diff] [blame] | 78 | For R4, ONAP supports deployment via OOM Helm Chart method and Heat deployment support is discontinued. DCAE Platform components are deployed via Helm charts - this includes Cloudify Manager, ConfigBinding service, ServiceChange Handler, Policy Handler and Inventory. Once DCAE platform components are up and running, rest of DCAE service components required for ONAP flow are deployed via bootstrap POD, which invokes Cloudify Manager API with Blueprints for various DCAE components that are needed for the built-in collections and control loops flow support. |
| 79 | |
Vijay VK | edaf8b1 | 2019-05-23 22:02:50 +0100 | [diff] [blame] | 80 | To keep the ONAP footprint minimal, only minimal set of MS (required for ONAP Integration usecases) are deployed via bootstrap pod. Rest of service blueprints are available for operator to deploy on-demand as required. |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 81 | |
Donald Hunter | a5683c6 | 2018-11-06 22:54:51 +0000 | [diff] [blame] | 82 | The PNDA platform service is an optional component that can be installed when using the OOM Helm Chart installation method on Openstack based Kubernetes infrastructure. |
| 83 | |
Vijay VK | f9e4344 | 2019-05-22 22:10:29 +0100 | [diff] [blame] | 84 | More details of the DCAE deployment can be found under Installation section. |
Lusheng Ji | 72c4fba | 2017-10-10 18:12:22 +0000 | [diff] [blame] | 85 | |
| 86 | |
| 87 | Usage Scenarios |
| 88 | --------------- |
| 89 | |
Vijay VK | f9e4344 | 2019-05-22 22:10:29 +0100 | [diff] [blame] | 90 | For ONAP R4 DCAE participates in the following use cases. |
Lusheng Ji | 6553a13 | 2017-10-12 02:47:00 +0000 | [diff] [blame] | 91 | |
Vijay VK | 2648c6d | 2018-09-19 04:30:37 +0100 | [diff] [blame] | 92 | - vDNS: VES collector, TCA analytics |
| 93 | |
Donald Hunter | a5683c6 | 2018-11-06 22:54:51 +0000 | [diff] [blame] | 94 | - vFW: VES collector, TCA analytics, PNDA based analytics |
Lusheng Ji | 72c4fba | 2017-10-10 18:12:22 +0000 | [diff] [blame] | 95 | |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 96 | - vCPE: VES collector, TCA analytics |
| 97 | |
| 98 | - vVoLTE: VES collector, Holmes analytics |
| 99 | |
Vijay VK | f9e4344 | 2019-05-22 22:10:29 +0100 | [diff] [blame] | 100 | - CCVPN : RestConf Collector, Holmes |
| 101 | |
| 102 | - BBS : VES Collector, PRH, BBS-Event Processor, VES-Mapper, RESTConf Collector |
| 103 | |
| 104 | - 5g : DataFile Collector, PM-Mapper, HV-VES |
| 105 | |
Vijay VK | 2648c6d | 2018-09-19 04:30:37 +0100 | [diff] [blame] | 106 | |
Lusheng Ji | 768421b | 2018-06-01 16:36:54 -0400 | [diff] [blame] | 107 | In addition, DCAE supports on-demand deployment and configuration of service components via CLAMP. In such case CLAMP invokes the deployment and configuration of additional TCA instances. |
| 108 | |