blob: fc10115949c5f5b5a0bc95f164425235b9707e1d [file] [log] [blame]
Lusheng Ji72c4fba2017-10-10 18:12:22 +00001.. This work is licensed under a Creative Commons Attribution 4.0 International License.
2.. http://creativecommons.org/licenses/by/4.0
Lusheng Jieaac78d2018-06-06 00:20:03 -04003
4
Lusheng Ji72c4fba2017-10-10 18:12:22 +00005Architecture
6============
7
Vijay VK6b0fa462019-05-20 16:06:11 +01008Data Collection Analytics and Events (DCAE) is the primary data collection and analysis system of ONAP. DCAE architecture comprises of DCAE Platform and DCAE Service components so that the DCAE system is flexible, elastic, and expansive enough for supporting the potentially infinite number of ways of constructing intelligent and automated control loops on distributed and heterogeneous infrastructure.
Lusheng Ji72c4fba2017-10-10 18:12:22 +00009
Vijay VK6b0fa462019-05-20 16:06:11 +010010DCAE Service components are the functional entities that realize the collection and analytics needs of ONAP control loops. They include the collectors for various data collection needs, event processors for data standardization, analytics that assess collected data, and various auxiliary microservices that assist data collection and analytics, and support other ONAP functions. Service components and DMaaP buses form the "data plane" for DCAE, where DCAE collected data is transported among different DCAE service components.
Lusheng Ji768421b2018-06-01 16:36:54 -040011
Vijay VK6b0fa462019-05-20 16:06:11 +010012DCAE Platform supports the functions to deploy, host and perform LCM applications of Service components. DCAE Platform components enable model driven deployment of service components and middleware infrastructures that service components depend upon, such as special storage and computation platforms. When triggered by an 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, interacts with the underlying networking and computing infrastructure such as OpenSatck installations and Kubernetes clusters to deploy and configure the virtual apparatus (i.e. the collectors, the analytics, and auxiliary microservices) that are needed to form the control loop, at locations that requested. DCAE Platform also provisions DMaaP topics and manages the distribution scopes of the topics following the prescription of the control loop model by interacting with controlling function of DMaaP.
Lusheng Ji768421b2018-06-01 16:36:54 -040013
Vijay VK6b0fa462019-05-20 16:06:11 +010014DCAE service components configuration are stored under Key-Value store service, embodied by a Consul cluster. During deployment, DCAE platform (via Cloudify plugin) stores service component configuration under Consul for each deployment/instance (identified by ServiceComponentName). All DCAE components during startup will acess these configuration through ConfigBindingService api's to load deployment configuration and watch for any subsequent update.
Lusheng Ji768421b2018-06-01 16:36:54 -040015
Vijay VK6b0fa462019-05-20 16:06:11 +010016DCAE components use Consul's distributed K-V store service to distribute and manage component configurations where each key is based on the unique identity of a DCAE component, and the value is the configuration for the corresponding component. DCAE platform creates and updates the K-V pairs based on information provided as part of the control loop blueprint, or 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 Ji768421b2018-06-01 16:36:54 -040017
18
Vijay VK6b0fa462019-05-20 16:06:11 +010019DCAE R4 Components
Lusheng Ji768421b2018-06-01 16:36:54 -040020------------------
21
Vijay VK6b0fa462019-05-20 16:06:11 +010022The 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 Ji6553a132017-10-12 02:47:00 +000023
24- DCAE Platform
25 - Core Platform
Lusheng Ji768421b2018-06-01 16:36:54 -040026 - Cloudify Manager: TOSCA model executor. Materializes TOSCA models of control loop, or Blueprints, into properly configured and managed virtual DCAE functional components.
Vijay VK6b0fa462019-05-20 16:06:11 +010027 - Plugins
Lusheng Ji6553a132017-10-12 02:47:00 +000028 - Extended Platform
Lusheng Ji768421b2018-06-01 16:36:54 -040029 - Configuration Binding Service: Agent for service component configuration fetching; providing configuration parameter resolution.
30 - Deployment Handler: API for triggering control loop deployment based on control loop's TOSCA model.
31 - 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.
32 - Service Change Handler: Handler for interfacing with SDC; receiving new TOSCA models; and storing them in DCAE's own inventory.
33 - DCAE Inventory-API: API for DCAE's TOSCA model store.
34 - Platform services
35 - Consul: Distributed service discovery service and KV store.
Donald Huntera5683c62018-11-06 22:54:51 +000036 - PNDA: Platform for Network Data Analytics.
Lusheng Ji768421b2018-06-01 16:36:54 -040037 - Postgres Database: DCAE's TOSCA model store.
38 - Redis Database: DCAE's transactional state store, used by TCA for supporting persistence and seamless scaling.
Lusheng Ji6553a132017-10-12 02:47:00 +000039
40- DCAE Services
41 - Collectors
Lusheng Ji768421b2018-06-01 16:36:54 -040042 - Virtual Event Streaming (VES) collector
43 - SNMP Trap collector
Vijay VK2648c6d2018-09-19 04:30:37 +010044 - High-Volume VES collector (HV-VES)
45 - DataFile collector
Lusheng Ji6553a132017-10-12 02:47:00 +000046 - Analytics
Lusheng Ji768421b2018-06-01 16:36:54 -040047 - Holmes correlation analytics
Vijay VK2648c6d2018-09-19 04:30:37 +010048 - CDAP based Threshold Crosssing Analytics application (tca)
49 - Dockerized standalone TCA (tca-gen2)
Lusheng Ji768421b2018-06-01 16:36:54 -040050 - Microservices
51 - PNF Registration Handler
52 - Missing Heartbeat analytics
53 - Universal Data Mapper service
54
55
Donald Huntera5683c62018-11-06 22:54:51 +000056The figure below shows the DCAE R3 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 Ji768421b2018-06-01 16:36:54 -040057
Vijay VK6b0fa462019-05-20 16:06:11 +010058.. image:: images/R4_architecture_diagram.png
Lusheng Ji768421b2018-06-01 16:36:54 -040059
60
61Deployment Scenarios
62--------------------
63
64Because 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 either as TOSCA executor launches a series of Blueprints, or deployed by control loop request originated from CLAMP, or even by operator manually invoking DCAE's deployment API call.
65
Vijay VK86cd8932018-10-23 16:35:29 +010066For R3, ONAP supports two deployment methodologies: Heat Orchestration Template method, or Helm Chart method. No matter which method, DCAE is deployed following the same flow. At its minimum, only the TOSCA model executor, the DCAE Cloudify Manager, needs to be deployed through the ONAP deployment process. Once the Cloudify Manager is up and running, all the rest of DCAE platform can be deployed by a bootstrap script, which makes a number of calls into the Cloudify Manager API with Blueprints for various DCAE components, first the DCAE Platform components, then the service components that are needed for the built-in control loops, such as vFW/vDNS traffic throttling. It is also possible that additional DCAE components are also launched as part of the ONAP deployment process using the ONAP level method instead of TOSCA model based method.
Lusheng Ji768421b2018-06-01 16:36:54 -040067
Donald Huntera5683c62018-11-06 22:54:51 +000068The PNDA platform service is an optional component that can be installed when using the OOM Helm Chart installation method on Openstack based Kubernetes infrastructure.
69
Vijay VK2648c6d2018-09-19 04:30:37 +010070More details of the DCAE R3 deployment will be covered by the Installation section.
Lusheng Ji72c4fba2017-10-10 18:12:22 +000071
72
73Usage Scenarios
74---------------
75
Vijay VK2648c6d2018-09-19 04:30:37 +010076For ONAP R3 DCAE participates in the following use cases.
Lusheng Ji6553a132017-10-12 02:47:00 +000077
Vijay VK2648c6d2018-09-19 04:30:37 +010078- vDNS: VES collector, TCA analytics
79
Donald Huntera5683c62018-11-06 22:54:51 +000080- vFW: VES collector, TCA analytics, PNDA based analytics
Lusheng Ji72c4fba2017-10-10 18:12:22 +000081
Lusheng Ji768421b2018-06-01 16:36:54 -040082- vCPE: VES collector, TCA analytics
83
84- vVoLTE: VES collector, Holmes analytics
85
Vijay VK2648c6d2018-09-19 04:30:37 +010086- OSAM/PNF: VES Collector, PRH
87
Lusheng Ji768421b2018-06-01 16:36:54 -040088In 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.
89