Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 1 | .. This work is licensed under a Creative Commons Attribution 4.0 International License. |
| 2 | .. http://creativecommons.org/licenses/by/4.0 |
VENKATESH KUMAR | 7f3e453 | 2020-11-18 16:30:36 -0500 | [diff] [blame^] | 3 | .. _ves-architecture: |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 4 | |
| 5 | VES Architecture |
Vijay VK | 6b0fa46 | 2019-05-20 16:06:11 +0100 | [diff] [blame] | 6 | ================ |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 7 | |
| 8 | .. image:: ./ves-deployarch.png |
| 9 | |
| 10 | VES Processing Flow |
Vijay VK | edaf8b1 | 2019-05-23 22:02:50 +0100 | [diff] [blame] | 11 | ------------------- |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 12 | |
Michal Banka | 9a7a931 | 2020-08-24 11:01:56 +0200 | [diff] [blame] | 13 | 1. Collector supports different URI based on single or batch event to be received. |
| 14 | 2. Post authentication – events are validated against schema. At this point – appropriate return code is sent to client when validation fails. |
| 15 | 3. Event Processor checks against transformation rules (if enabled) and handles VES output standardization (e.g. VES 7.x input to VES5.4 output). |
| 16 | 4. Optional (activated by flag *collector.externalSchema.checkflag*) post authentication of stndDefined fields – specific fields are validated against schema. At this point – appropriate return code is sent to client when validation fails. |
| 17 | 5. If no problems were detected during previous steps, success HTTP code is being returned. |
| 18 | 6. Based on domain (or stndDefinedNamespace), events are asynchronously distributed to configurable topics. |
| 19 | 1. If topic mapping does not exist, event distribution is skipped. |
| 20 | 2. Post to outbound topic(s). |
| 21 | 3. If DMaaP publish is unsuccessful, messages will be queued per topic within VESCollector. |
VENKATESH KUMAR | 7cfaea2 | 2020-04-22 17:31:32 -0400 | [diff] [blame] | 22 | |
| 23 | Note: As the collector is deployed as micro-service, all configuration parameters (including DMaaP topics) are passed to the collector dynamically. VEScollector refreshes the configuration from CBS every 5 minutes |
| 24 | |
Michal Banka | 9a7a931 | 2020-08-24 11:01:56 +0200 | [diff] [blame] | 25 | .. image:: ./ves-processing-flow.png |
| 26 | .. This image has been created using online editor https://app.diagrams.net/ and can be easily edited there. |
| 27 | Editable file version of this image is located in docs/sections/services/ves-http/ves-processing-flow.drawio |
| 28 | and might be imported into editor. |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 29 | |
| 30 | VES Schema Validation |
Vijay VK | edaf8b1 | 2019-05-23 22:02:50 +0100 | [diff] [blame] | 31 | --------------------- |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 32 | |
| 33 | VES Collector is configured to support below VES Version; the corresponding API uses VES schema definition for event validation. |
| 34 | |
Vijay VK | f6659fc | 2018-11-02 05:07:27 +0100 | [diff] [blame] | 35 | =========== ================ ================================== |
| 36 | VES Version API version Schema Definition |
| 37 | =========== ================ ================================== |
Michal Banka | 9a7a931 | 2020-08-24 11:01:56 +0200 | [diff] [blame] | 38 | VES 1.2 eventListener/v1 `CommonEventFormat_Vendors_v25.json <https://git.onap.org/dcaegen2/collectors/ves/tree/etc/CommonEventFormat_Vendors_v25.json>`_ |
VENKATESH KUMAR | 7cfaea2 | 2020-04-22 17:31:32 -0400 | [diff] [blame] | 39 | VES 4.1 eventListener/v4 `CommonEventFormat_27.2.json <https://git.onap.org/dcaegen2/collectors/ves/tree/etc/CommonEventFormat_27.2.json>`_ |
| 40 | VES 5.4 eventListener/v5 `CommonEventFormat_28.4.1.json <https://git.onap.org/dcaegen2/collectors/ves/tree/etc/CommonEventFormat_28.4.1.json>`_ |
Michal Banka | 9a7a931 | 2020-08-24 11:01:56 +0200 | [diff] [blame] | 41 | VES 7.2 eventListener/v7 `CommonEventFormat_30.2_ONAP.json <https://git.onap.org/dcaegen2/collectors/ves/tree/etc/CommonEventFormat_30.2_ONAP.json>`_ |
Vijay VK | f6659fc | 2018-11-02 05:07:27 +0100 | [diff] [blame] | 42 | =========== ================ ================================== |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 43 | |
| 44 | Features Supported |
Vijay VK | edaf8b1 | 2019-05-23 22:02:50 +0100 | [diff] [blame] | 45 | ------------------ |
Michal Banka | 9a7a931 | 2020-08-24 11:01:56 +0200 | [diff] [blame] | 46 | |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 47 | - VES collector deployed as docker containers |
Vijay VK | 6b0fa46 | 2019-05-20 16:06:11 +0100 | [diff] [blame] | 48 | - Acknowledgement to sender with appropriate response code (both successful and failure) |
pawel | 014baca | 2019-11-07 11:15:00 +0100 | [diff] [blame] | 49 | - Authentication of the events posted to collector (support 2 types of authentication setting) |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 50 | - Support single or batch JSON events input |
Michal Banka | 9a7a931 | 2020-08-24 11:01:56 +0200 | [diff] [blame] | 51 | - General schema validation (against standard VES definition) |
| 52 | - StndDefined fields schema validation |
| 53 | - Mapping of external schemas to local schema files during stndDefined validation |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 54 | - Multiple schema support and backward compatibility |
| 55 | - Configurable event transformation |
| 56 | - Configurable suppression |
| 57 | - Publish events into Dmaap Topic (with/without AAF) |
| 58 | |
| 59 | The collector can receive events via standard HTTP port (8080) or secure port (8443). Depending on the install/configuration – either one or both can be supported (ports are also modifiable). |
| 60 | |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 61 | Dynamic configuration fed into Collector via DCAEPlatform |
Vijay VK | edaf8b1 | 2019-05-23 22:02:50 +0100 | [diff] [blame] | 62 | --------------------------------------------------------- |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 63 | |
| 64 | - Outbound Dmaap/UEB topic |
| 65 | - Schema version to be validated against |
| 66 | - Authentication account for VNF |
| 67 | |
| 68 | POST requests result in standard HTTP status codes: |
| 69 | |
VENKATESH KUMAR | 7cfaea2 | 2020-04-22 17:31:32 -0400 | [diff] [blame] | 70 | - 200-299 Success |
| 71 | - 400-499 Client request has a problem (data error) |
| 72 | - 500-599 Collector service has a problem |
Vijay VK | 86cd893 | 2018-10-23 16:35:29 +0100 | [diff] [blame] | 73 | |
| 74 | |