blob: 88deba4a1f72999d3b0626f51adcade666293787 [file] [log] [blame]
Krzysztof Kuzmickie965f3a2021-05-13 16:28:45 +02001.. This work is licensed under a Creative Commons Attribution 4.0
2 International License. http://creativecommons.org/licenses/by/4.0
3
Krzysztof Kuzmickie965f3a2021-05-13 16:28:45 +02004:orphan:
5
Cédric Ollivier808252c2022-07-05 14:53:36 +02006.. _docs_StndDefined_Events_Collection_Mechanism:
7
Krzysztof Kuzmickie965f3a2021-05-13 16:28:45 +02008VES Collector - Standard Defined Events Collection Mechanism
9------------------------------------------------------------
10
11Description
12~~~~~~~~~~~
13
14The target of standard defined events collection mechanism development was to allow collection of events defined by standards organizations using VES Collector,
15and providing them for consumption by analytics applications running on top of DCAE platform. The following features have been implemented:
16
171. Event routing, based on a new CommonHeader field “stndDefinedNamespace”
182. Standards-organization defined events can be included using a dedicated stndDefinedFields.data property
193. Standards-defined events can be validated using openAPI descriptions provided by standards organizations, and indicated in stndDefinedFields.schemaReference
20
Lukasz Rajewski7ef4f9b2022-09-21 11:26:15 +020021`Standard Defined Events Collection Mechanism description <https://docs.onap.org/projects/onap-dcaegen2/en/jakarta/sections/services/ves-http/stnd-defined-validation.html>`_
Krzysztof Kuzmickie965f3a2021-05-13 16:28:45 +020022
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 Ollivier808252c2022-07-05 14:53:36 +020027 - 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 Kuzmickie965f3a2021-05-13 16:28:45 +020029
30
31How to Configure VES Collector
32~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33
Lukasz Rajewski7ef4f9b2022-09-21 11:26:15 +020034By 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 Kuzmickie2b15632021-10-13 11:13:28 +020035In Istanbul release in OOM are used schema files from https://forge.3gpp.org/rep/sa5/MnS/blob/SA88-Rel16/OpenAPI/.
Krzysztof Kuzmickie965f3a2021-05-13 16:28:45 +020036The newest schema files can be found in https://forge.3gpp.org/rep/sa5/MnS/tree/Rel-16-SA-91/OpenAPI
37If 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
39In order to prepare second instance of VES Collector please follow below procedure:
40
Krzysztof Kuzmickie2b15632021-10-13 11:13:28 +0200411. (Optional step) If VES Collector should obtaining X.509 certificates from CMPv2 server for secure xNF connections please follow below steps:
Krzysztof Kuzmickie965f3a2021-05-13 16:28:45 +020042
Michal Jagielloeaebcef2022-11-10 08:41:22 +000043 - 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 Rajewski7ef4f9b2022-09-21 11:26:15 +020044 - 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 Kuzmickie965f3a2021-05-13 16:28:45 +020045
462. If usage of config maps from OOM containing schema files is required please follow procedure for
Lukasz Rajewski7ef4f9b2022-09-21 11:26:15 +020047 `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 Kuzmickie965f3a2021-05-13 16:28:45 +020048 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 Kuzmickie2b15632021-10-13 11:13:28 +020052 - external_port - set here ``node port`` from range ``30000-32767`` not used in ONAP instance for example ``30519``
Krzysztof Kuzmickie965f3a2021-05-13 16:28:45 +020053 - ``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
673. (Optional step) If ONAP is installed in Dual Stack and VES Collector should listen in IPv6 network
68
Krzysztof Kuzmickie2b15632021-10-13 11:13:28 +020069 - 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 Kuzmickie965f3a2021-05-13 16:28:45 +020070 .. 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 Kuzmickie2b15632021-10-13 11:13:28 +020082 nodePort: 30619
Krzysztof Kuzmickie965f3a2021-05-13 16:28:45 +020083 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 Rajewski7ef4f9b2022-09-21 11:26:15 +020097 xdcae-ves-collector-std-def-evnents NodePort fd00:101::6ad <none> 8443:30619/TCP