Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 1 | .. This work is licensed under a Creative Commons Attribution 4.0 |
| 2 | International License. http://creativecommons.org/licenses/by/4.0 |
| 3 | |
Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 4 | :orphan: |
| 5 | |
Cédric Ollivier | 808252c | 2022-07-05 14:53:36 +0200 | [diff] [blame] | 6 | .. _docs_StndDefined_Events_Collection_Mechanism: |
| 7 | |
Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 8 | VES Collector - Standard Defined Events Collection Mechanism |
| 9 | ------------------------------------------------------------ |
| 10 | |
| 11 | Description |
| 12 | ~~~~~~~~~~~ |
| 13 | |
| 14 | The target of standard defined events collection mechanism development was to allow collection of events defined by standards organizations using VES Collector, |
| 15 | and providing them for consumption by analytics applications running on top of DCAE platform. The following features have been implemented: |
| 16 | |
| 17 | 1. Event routing, based on a new CommonHeader field “stndDefinedNamespace” |
| 18 | 2. Standards-organization defined events can be included using a dedicated stndDefinedFields.data property |
| 19 | 3. Standards-defined events can be validated using openAPI descriptions provided by standards organizations, and indicated in stndDefinedFields.schemaReference |
| 20 | |
Lukasz Rajewski | 7ef4f9b | 2022-09-21 11:26:15 +0200 | [diff] [blame] | 21 | `Standard Defined Events Collection Mechanism description <https://docs.onap.org/projects/onap-dcaegen2/en/jakarta/sections/services/ves-http/stnd-defined-validation.html>`_ |
Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 22 | |
| 23 | .. note:: |
| 24 | |
| 25 | VES Collector orchestrated using Helm or Cloudify uses standard defined domain schema files bundled within VES collector image during image build. |
| 26 | Also new Helm based installation mechanism for collectors doesn't support yet certain features available with the traditional Cloudify orchestration based mechanisms: |
Cédric Ollivier | 808252c | 2022-07-05 14:53:36 +0200 | [diff] [blame] | 27 | - Obtaining X.509 certificates from external CMP v2 server for secure xNF connections |
| 28 | - Exposing the Collector port in Dual Stack IPv4/IPv6 networks. |
Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 29 | |
| 30 | |
| 31 | How to Configure VES Collector |
| 32 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 33 | |
Lukasz Rajewski | 7ef4f9b | 2022-09-21 11:26:15 +0200 | [diff] [blame] | 34 | By default config maps containing schema files are defined in the `OOM <https://github.com/onap/oom/tree/jakarta/kubernetes/dcaegen2-services/resources/external>`_ repository and installed with dcaegen2 module. |
Krzysztof Kuzmicki | e2b1563 | 2021-10-13 11:13:28 +0200 | [diff] [blame] | 35 | In Istanbul release in OOM are used schema files from https://forge.3gpp.org/rep/sa5/MnS/blob/SA88-Rel16/OpenAPI/. |
Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 36 | The newest schema files can be found in https://forge.3gpp.org/rep/sa5/MnS/tree/Rel-16-SA-91/OpenAPI |
| 37 | If for production/test purpose are required different or newest schema files please follow procedure for `config map update <https://docs.onap.org/projects/onap-dcaegen2/en/latest/sections/configuration.html#config-maps>`_. |
| 38 | |
| 39 | In order to prepare second instance of VES Collector please follow below procedure: |
| 40 | |
Krzysztof Kuzmicki | e2b1563 | 2021-10-13 11:13:28 +0200 | [diff] [blame] | 41 | 1. (Optional step) If VES Collector should obtaining X.509 certificates from CMPv2 server for secure xNF connections please follow below steps: |
Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 42 | |
Michal Jagiello | eaebcef | 2022-11-10 08:41:22 +0000 | [diff] [blame] | 43 | - Install `Cert Manager <https://docs.onap.org/projects/onap-oom/en/latest/sections/guides/infra_guides/oom_base_config_setup.html#install-cert-manager>`_ |
Lukasz Rajewski | 7ef4f9b | 2022-09-21 11:26:15 +0200 | [diff] [blame] | 44 | - Configure `Cert Service <https://docs.onap.org/projects/onap-oom-platform-cert-service/en/jakarta/sections/configuration.html>`_ if external CMP v2 server is in use. |
Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 45 | |
| 46 | 2. If usage of config maps from OOM containing schema files is required please follow procedure for |
Lukasz Rajewski | 7ef4f9b | 2022-09-21 11:26:15 +0200 | [diff] [blame] | 47 | `external repo schema files from OOM connection to VES collector <https://docs.onap.org/projects/onap-dcaegen2/en/jakarta/sections/services/ves-http/installation.html#external-repo-schema-files-from-oom-connection-to-ves-collector>`_ |
Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 48 | with changes described below. |
| 49 | |
| 50 | As new instance of VES Collector will be introduced to ONAP namespace there is need to modify parameters from ``/inputs/k8s-ves-inputs-tls.yaml`` in Bootstrap POD |
| 51 | |
Krzysztof Kuzmicki | e2b1563 | 2021-10-13 11:13:28 +0200 | [diff] [blame] | 52 | - external_port - set here ``node port`` from range ``30000-32767`` not used in ONAP instance for example ``30519`` |
Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 53 | - ``service_component_type``, ``service_id``, ``service_component_name_override`` - set here custom service name e.g. ``dcae-ves-collector-std-def-evnents`` |
| 54 | |
| 55 | (Optional step) If VES Collector should also obtaining X.509 certificates from CMP v2 and its clients should successfully validate its hostname then following parameters need to modified in ``/inputs/k8s-ves-inputs-tls.yaml`` file. |
| 56 | |
| 57 | - ``external_cert_use_external_tls`` - change from ``false`` to ``true`` |
| 58 | - ``external_cert_common_name`` - set same value as used in ``service_component_name_override parameter`` |
| 59 | - ``service_component_name_override`` - add following values: |
| 60 | - all IPv4 addresses of ONAP worker hosts |
| 61 | - all IPv6 addresses of ONAP worker hosts |
| 62 | - all FQDN names of ONAP worker hosts |
| 63 | - ``service_component_name_override`` parameter value. |
| 64 | |
| 65 | Deploy new instance of VES collector using ``/inputs/k8s-ves-inputs-tls.yaml`` |
| 66 | |
| 67 | 3. (Optional step) If ONAP is installed in Dual Stack and VES Collector should listen in IPv6 network |
| 68 | |
Krzysztof Kuzmicki | e2b1563 | 2021-10-13 11:13:28 +0200 | [diff] [blame] | 69 | - on RKE node prepare file ``ves-ipv6.yaml`` with following content (below is an example of file for ``dcae-ves-collector-std-def-evnents`` service name created in section 2, in ``node port`` set once again value from range ``30000-32767`` not used in ONAP instance for example ``30619`` ) |
Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 70 | .. code-block:: bash |
| 71 | |
| 72 | apiVersion: v1 |
| 73 | kind: Service |
| 74 | metadata: |
| 75 | name: xdcae-ves-collector-std-def-evnents |
| 76 | namespace: onap |
| 77 | spec: |
| 78 | externalTrafficPolicy: Cluster |
| 79 | ipFamily: IPv6 |
| 80 | ports: |
| 81 | - name: xdcae-ves-collector-std-def-evnents |
Krzysztof Kuzmicki | e2b1563 | 2021-10-13 11:13:28 +0200 | [diff] [blame] | 82 | nodePort: 30619 |
Krzysztof Kuzmicki | e965f3a | 2021-05-13 16:28:45 +0200 | [diff] [blame] | 83 | port: 8443 |
| 84 | protocol: TCP |
| 85 | targetPort: 8443 |
| 86 | selector: |
| 87 | app: dcae-ves-collector-std-def-evnents |
| 88 | sessionAffinity: None |
| 89 | type: NodePort |
| 90 | |
| 91 | - apply prepared service and check if it working |
| 92 | .. code-block:: bash |
| 93 | |
| 94 | kubectl -n onap apply -f ves-ipv6.yaml |
| 95 | |
| 96 | kubectl -n onap get svc | grep collector-std-def-evnents |
Lukasz Rajewski | 7ef4f9b | 2022-09-21 11:26:15 +0200 | [diff] [blame] | 97 | xdcae-ves-collector-std-def-evnents NodePort fd00:101::6ad <none> 8443:30619/TCP |