Restconf collector is a microservice in ONAP DCAE. It subscribes to external controllers
and receives event data. After receiving event data it may modify it as per usecase's requirement and
produce a DMaaP event. This DMaap event usually consumed by VES mapper.
Restconf Collector can subscribe multiple events from multiple controllers.
Below diagram shows restconf interaction with an external controller.
* RestConf collector(RCC) subscribe for ONT (Optical network terminal) registration event from 3rd
party Access Controller.
* RCC requests to set up a persistent connection with the controller.
* As the connection is standing, Access controller pushes registration event to RCC.
* RCC receives event, convert it JSON event, modify and append some user data and publishes on
DMaap with topic of DCAE_RCC_OUTPUT.
* Ves Mapper consumes this event, convert it to VES event using Mapper
* RestConf Collector (RCC)subscribes for remote failure alarm to SOTN Controller (SC)
* RCC requests to set up a persistent connection with the 3rd party Controller.
* As the connection is standing, SC pushes service route status data to the collector
* RCC receives alarm data, converts it into JSON format and publishes on DMaap with topic of
* VES Adapeter consumes the alarm message
* VES requests the RestConf2VES mapping from the mapper. As of CCVPN use case proposal,
the RestConf2VES.xml is manually uploaded to the mapper.
* Mapper response back the mapping
* UVA converts json alarm into VES event
* UVA publishes the VES event on DMAAP for further correlation
Restconf Collector can be installed using cloudify blueprint https://git.onap.org/dcaegen2/collectors/restconf/tree/dpo/blueprints/k8s-rcc-policy.yaml-template?h=master (Master)
There are several configuration paramters. Some of them are..
|rcc.keystore.passwordfile||Keystore password file|
|rcc.truststore.passwordfile||Truststore password file|
|rcc_policy||Controllers configuration (List)|
|controller_name||Name of controller|
|controller_restapiUrl||Ip and port of the controller|
|controller_restapiUser||Rest API username|
|controller_restapiPassword||Rest API password|
|controller_accessTokenUrl||Rest URL to fetch access Token|
|controller_accessTokenFile||Template to get access token|
|controller_accessTokenMethod||Method name such as Post/Put to fetch access token|
|controller_subsMethod||Method name such as Get/Put etc. to subscribe|
|controller_subscriptionUrl||Rest URL to subscribe for event|
|controller_disableSsl||Discable SSL handshake. For test not for production|
|event_details||List of events for a controller (List|
|event_name||Name of the event|
|event_sseventUrlEmbed||If SSE event URL is embeded in th event subscription reponse|
|event_subscriptionTemplate||Event subscription template|
|event_ruleId||Rule id to attach (optional)|
|modifyData||whether to modify data. (True/False)|
|modifyMethod||If modify data is true should provide modify method name and implementation|
[Modify the configuration parameters if required. Update the security files.]
|Build||mvn clean install|
|Run||docker run onap/org.onap.dcaegen2.collectors.restconfcollector|
cfy blueprints validate /<blueprints-file-path>/k8s-rcc-policy.yaml
cfy blueprints upload -b restconfcollector /<blueprints-file-path>/k8s-rcc-policy.yaml
cfy deployments create -b restconfcollector
cfy executions start -d restconfcollector install
cfy uninstall restconfcollector
cfy deployments delete -f restconfcollector
cfy blueprints delete restconfcollector
Check if component is running.
The logs are stored in /opt/app/restconfcollector/logs/collector.log