.. This work is licensed under a Creative Commons Attribution 4.0 International License.
.. http://creativecommons.org/licenses/by/4.0

.. _run_time_configuration:

Run-Time configuration
======================

(see :ref:`deployment`)

HV-VES can fetch configuration directly from Consul service in the following JSON format:

.. code-block:: json

    {
        "dmaap.kafkaBootstrapServers": "message-router-kafka:9093",
        "collector.routing": [
                {
                    "fromDomain": "perf3gpp",
                    "toTopic": "HV_VES_PERF3GPP"
                },
                {
                    "fromDomain": "heartbeat",
                    "toTopic": "HV_VES_HEARTBEAT"
                },
                ...
        ]
    }

HV-VES does not verify the correctness of configuration data and uses them as is, in particular:

- **KafkaBootstrapServers** is used as host name and port for publishing events to Kafka service.
- Every **routing** array object specifies one event publishing route.

  - **fromDomain** node should be a case-sensitive string of single domain taken from VES Common Event Header specification.
  - **toTopic** should be a case-sensitive string of Kafka topic.
  - When HV-VES receives VES Event, it checks the domain contained in it. If the route from that domain to any topic exists in configuration, then HV-VES publishes that event to topic in that route.
  - If there are two routes from the same domain to different topics, then it is undefined which route will be used.

The configuration is created from HV-VES Cloudify blueprint by specifying **application_config** node during ONAP OOM/Kubernetes deployment. Example of the node specification:

.. code-block:: YAML

    node_templates:
      hv-ves:
        properties:
          application_config:
            dmaap.kafkaBootstrapServers: message-router-kafka:9092
            collector.routing:
              fromDomain: perf3gpp
              toTopic: HV_VES_PERF3GPP

Endpoint on which HV-VES seeks configuration can be set during deployment as described in :ref:`deployment`.

HV-VES waits 10 seconds (default, configurable during deplyoment with **first-request-delay** option, see :ref:`deployment`) before the first attempt to retrieve configuration from Consul. This is to prevent possible synchronization issues. During that time HV-VES declines any connection attempts from xNF (VNF/PNF).

After first request, HV-VES asks for configuration in fixed intervals, configurable from command line (**request-interval**). By defualt interval is set to 5 seconds.

In case of failing to retrieve configuration, collector temporarily extends this interval and retries. After five unsuccessfull attempts, container becomes unhealthy and cannot recover. HV-VES in this state is unusable and the container should be restarted.
