Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: nexus.onap.org to nexus3.onap.org

...

The below steps covers manual setup of DCAE VM’s and DCAE service components.

VESCollector

 


DCAE VES Collector can be configured on VM with ubuntu-16.04 image (m1.small should suffice if this is only service) and 20Gb cinder storage

...

sudo docker login -u docker -p docker nexusnexus3.onap.org:10001sudo
       sudo docker pull 

...

nexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.ves.vescollector:v1.1.

...

0



3)      Start the VESCollector with below command

sudo docker run -d --name vescollector -p 8080:8080/tcp -p 8443:8443/tcp -P -e DMAAPHOST='<dmaap IP>' nexusnexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.ves.vescollector:v1.1.10

                Note:  Change the dmaaphost to required DMAAP ip. To change the dmaap information for a running container,  stop the active container and rerun above command changing the dmaap IP.

...

Code Block
languagexml
titleinit.sh
collapsetrue
#!/bin/sh
sudo docker ps | grep "vescollector"
if [ $? -ne 0 ]; then
        sudo docker login -u docker -p docker nexusnexus3.onap.org:10001
        sudo docker pull nexusnexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.ves.vescollector:1.1
        sudo docker rm -f vescollector
        echo "Collector process not running - $(date)" >> /home/ubuntu/startuplog
        sudo docker run -d --name vescollector -p 8080:8080/tcp -p 8443:8443/tcp -P -e DMAAPHOST='10.12.25.96' nexusnexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.ves.vescollector:v1.1.10
else
        echo "Collector process running - $(date)" >> /home/ubuntu/startuplog
fi

...

	sudo  update-rc.d init.sh start 2

...


ThresholdCrossingAnalysis (TCA/CDAP)

...

 sudo docker run -d --name cdap-sdk-2 -p 11011:11011 -p 11015:11015 caskdata/cdap-standalone:4.1.2

4)      Create Namespace on CDAP application

	curl -X PUT http://localhost:11015/v3/namespaces/cdap_tca_hi_lo

5)      Create TCA app configu config file - "tca_app_config.json" under ~ubuntu as below

Code Block
titletca_app_config.json
collapsetrue
{
 "artifact": {
  "name": "dcae-analytics-cdap-tca",
  "version": "2.0.01",
  "scope": "user"
 },
 "config": {
  "appName": "dcae-tca",
  "appDescription": "DCAE Analytics Threshold Crossing Alert Application",
  "tcaVESMessageStatusTableName": "TCAVESMessageStatusTable",
  "tcaVESMessageStatusTableTTLSeconds": 86400.0,
  "tcaAlertsAbatementTableName": "TCAAlertsAbatementTable",
  "tcaAlertsAbatementTableTTLSeconds": 1728000.0,
  "tcaVESAlertsTableName": "TCAVESAlertsTable",
  "tcaVESAlertsTableTTLSeconds": 1728000.0,
  "thresholdCalculatorFlowletInstances": 2.0,
  "tcaSubscriberOutputStreamName": "TCASubscriberOutputStream"
 }
}

...

Code Block
languagexml
titletca_app_preferences.json
collapsetrue
{
  "publisherContentType" : "application/json",
  "publisherHostName" : "10.12.25.96",
  "publisherHostPort" : "3904",
  "publisherMaxBatchSize" : "1",
  "publisherMaxRecoveryQueueSize" : "100000",
  "publisherPollingInterval" : "20000",
  "publisherProtocol" : "http",
  "publisherTopicName" : "unauthenticated.DCAE_CL_OUTPUT",
  "subscriberConsumerGroup" : "OpenDCAE-c1",
  "subscriberConsumerId" : "c1",
  "subscriberContentType" : "application/json",
  "subscriberHostName" : "10.12.25.96",
  "subscriberHostPort" : "3904",
  "subscriberMessageLimit" : "-1",
  "subscriberPollingInterval" : "20000",
  "subscriberProtocol" : "http",
  "subscriberTimeoutMS" : "-1",
  "subscriberTopicName" : "unauthenticated.SEC_MEASUREMENT_OUTPUT",
  "enableAAIEnrichment" : false,
  "aaiEnrichmentHost" : "10.12.25.72",
  "aaiEnrichmentPortNumber" : 8443,
  "aaiEnrichmentProtocol" : "https",
  "aaiEnrichmentUserName" : "DCAE",
  "aaiEnrichmentUserPassword" : "DCAE",
  "aaiEnrichmentIgnoreSSLCertificateErrors" : falsetrue,
  "aaiVNFEnrichmentAPIPath" : "/aai/v11/network/generic-vnfs/generic-vnf",
  "aaiVMEnrichmentAPIPath" :  "/aai/v11/search/nodes-query",
  "tca_policy" : "{
        \"domain\": \"measurementsForVfScaling\",
        \"metricsPerEventName\": [{
                \"eventName\": \"vFirewallBroadcastPackets\",
                \"controlLoopSchemaType\": \"VNF\",
                \"policyScope\": \"DCAE\",
                \"policyName\": \"DCAE.Config_tca-hi-lo\",
                \"policyVersion\": \"v0.0.1\",
                \"thresholds\": [{
                        \"closedLoopControlName\": \"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\",
                        \"version\": \"1.0.2\",
                        \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\",
                        \"thresholdValue\": 300,
                        \"direction\": \"LESS_OR_EQUAL\",
                        \"severity\": \"MAJOR\",
                        \"closedLoopEventStatus\": \"ONSET\"
                }, {
                        \"closedLoopControlName\": \"ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a\",
                        \"version\": \"1.0.2\",
                        \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\",
                        \"thresholdValue\": 700,
                        \"direction\": \"GREATER_OR_EQUAL\",
                        \"severity\": \"CRITICAL\",
                        \"closedLoopEventStatus\": \"ONSET\"
                }]
        }, {
                \"eventName\": \"vLoadBalancer\",
                \"controlLoopSchemaType\": \"VM\",
                \"policyScope\": \"DCAE\",
                \"policyName\": \"DCAE.Config_tca-hi-lo\",
                \"policyVersion\": \"v0.0.1\",
                \"thresholds\": [{
                        \"closedLoopControlName\": \"ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3\",
                        \"version\": \"1.0.2\",
                        \"fieldPath\": \"$.event.measurementsForVfScalingFields.vNicUsageArray[*].receivedTotalPacketsDelta\",
                        \"thresholdValue\": 300,
                        \"direction\": \"GREATER_OR_EQUAL\",
                        \"severity\": \"CRITICAL\",
                        \"closedLoopEventStatus\": \"ONSET\"
                }]
        }, {
                \"eventName\": \"Measurement_vGMUX\",
                \"controlLoopSchemaType\": \"VNF\",
                \"policyScope\": \"DCAE\",
                \"policyName\": \"DCAE.Config_tca-hi-lo\",
                \"policyVersion\": \"v0.0.1\",
                \"thresholds\": [{
                        \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\",
                        \"version\": \"1.0.2\",
                        \"fieldPath\": \"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\",
                        \"thresholdValue\": 0,
                        \"direction\": \"EQUAL\",
                        \"severity\": \"MAJOR\",
                        \"closedLoopEventStatus\": \"ABATED\"
                }, {
                        \"closedLoopControlName\": \"ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e\",
                        \"version\": \"1.0.2\",
                        \"fieldPath\": \"$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value\",
                        \"thresholdValue\": 0,
                        \"direction\": \"GREATER\",
                        \"severity\": \"CRITICAL\",
                        \"closedLoopEventStatus\": \"ONSET\"
                }]
        }]
}"
}

 Note: Dmaap configuration are specified on this file on publisherHostName and subscriberHostName. To be changed as required**


6 a)  To enable AAI Enrichment in TCA for CL event, following updates should be done to TCA app preference file before proceeding

          "enableAAIEnrichment" :  true
          "aaiEnrichmentHost" :  <should be set to aai1_ip_addr>
          "aaiEnrichmentIgnoreSSLCertificateErrors" : true


7)      Copy below script to CDAP server (7)      Copy below script to CDAP server (this gets latest image from nexus and deploys TCA application) and execute it

Code Block
languagebash
titlereload-tca.sh
collapsetrue
#!/bin/sh
TCA_JAR=dcae-analytics-cdap-tca-2.0.0.jar
rm -f /home/ubuntu/$TCA_JAR
cd /home/ubuntu/
wget https://nexusnexus3.onap.org/service/local/repositories/stagingreleases/content/org/onap/dcaegen2/analytics/tca/dcae-analytics-cdap-tca/2.0.0/$TCA_JAR
if [ $? -eq 0 ]; then
        if [ -f /home/ubuntu/$TCA_JAR ]; then
                echo "Restarting TCA CDAP application using $TCA_JAR artifact"
        else
                echo "ERROR: $TCA_JAR missing"
                exit 1
        fi
else
        echo "ERROR: $TCA_JAR not found in nexus"
        exit 1
fi
# stop programs
curl -X POST http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/workers/TCADMaaPMRPublisherWorker/stop
curl -X POST http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/workers/TCADMaaPMRSubscriberWorker/stop
curl -X POST http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/flows/TCAVESCollectorFlow/stop
# delete application
curl -X DELETE http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca#tca
# delete artifact
curl -X DELETE http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/artifacts/dcae-analytics-cdap-tca/versions/2.0.01
# load artifact
curl -X POST --data-binary @/home/ubuntu/$TCA_JAR http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/artifacts/dcae-analytics-cdap-tca
echo
# create app
curl -X PUT -d @/home/ubuntu/tca_app_config.json http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca#tca
# load preferences
curl -X PUT -d @/home/ubuntu/tca_app_preferences.json http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/preferences
# start programs
curl -X POST http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/workers/TCADMaaPMRPublisherWorker/start
curl -X POST http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/workers/TCADMaaPMRSubscriberWorker/start
curl -X POST http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/flows/TCAVESCollectorFlow/start
echo
# get status of programs
curl http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/workers/TCADMaaPMRPublisherWorker/status
curl http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/workers/TCADMaaPMRSubscriberWorker/status
curl http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/flows/TCAVESCollectorFlow/status
echo


Note: Attached the script also for reference : reload-tca.sh

8)      Verify TCA application and logs via CDAP GUI processes

...

Code Block
languagebash
titleinit.sh
collapsetrue
#!/bin/sh
#docker run -d --name cdap-sdk -p 11011:11011 -p 11015:11015 caskdata/cdap-standalone:4.1.2
sudo docker restart cdap-sdk-2
sleep 30
# start program
curl -X POST http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/workers/TCADMaaPMRPublisherWorker/start
curl -X POST http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/workers/TCADMaaPMRSubscriberWorker/start
curl -X POST http://localhost:11015/v3/namespaces/cdap_tca_hi_lo/apps/dcae-tca/flows/TCAVESCollectorFlow/start

...


This script was invoked via VM init script (rc.d).

...