You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Overview

SON-Handler application acts upon reception of  two types of events (Measurement and Fault events) and Neighbor list change notification from SDNR.

Fault events are sent whenever collisions/confusions found by the Ran-simulator due to pci changes and at the same time SDNR notification is also sent whenever there is change in pci value.Measurement events are periodically sent from Ran-simulator which gives the KPI information.

SON-Handler processes the events and calls OOF for global optimization. Then it determines the actions based on OOF response and writes to unauthenticated.DCAE_CL_OUTPUT for policy to take necessary actions. 

Blueprint/model/image

Βlueprint component file can be found in

https://gerrit.onap.org/r/gitweb?p=dcaegen2/services/son-handler.git;a=blob;f=dpo/blueprints/k8s-sonhms.yaml;h=d77f0fc01888fc42ea84712ee8d0a95c5fb36fdf;hb=refs/heads/master

Blueprint inputs file can be found in

https://gerrit.onap.org/r/gitweb?p=dcaegen2/services/son-handler.git;a=blob;f=dpo/blueprints/k8s-sonhms-inputs.yaml;h=e417c01a7c0c1fc738cd154e3e3b5f9abbedf584;hb=refs/heads/master

Docker image metadata for component can be found in

https://nexus3.onap.org/repository/docker.snapshot/v2/onap/org.onap.dcaegen2.services.son-handler/manifests/1.0.0

Deployment Prerequisite/dependencies

SON-Handler service requires DMAAP and Policy components to be functional.

SON-hadler service requires  the following dmaap topics to be present in the running DMAAP instance :

1.PCI-NOTIF-TOPIC-NGHBR-LIST-CHANGE-INFO

2.unauthenticated.SEC_FAULT_OUTPUT

3.unauthenticated.SEC_MEASUREMENT_OUTPUT

4.DCAE_CL_RSP

Policy model required for SON-handler service should be created and pushed to policy component.

Steps for creating and pushing the policy model:

1.Login to PDP container

Login to PDP container
kubectl exec -ti --namespace onap policy-pdp-0 bash

2.Create policy model

Policy Creation
curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
  "policyName": "com.PCIMS_CONFIG_POLICY",
  "configBody": "{ \"PCI_NEIGHBOR_CHANGE_CLUSTER_TIMEOUT_IN_SECS\":60, \"PCI_MODCONFIG_POLICY_NAME\":\"ControlLoop-vPCI-fb41f388-a5f2-11e8-98d0-529269fb1459\", \"PCI_OPTMIZATION_ALGO_CATEGORY_IN_OOF\":\"OOF-PCI-OPTIMIZATION\", \"PCI_SDNR_TARGET_NAME\":\"SDNR\" }",
  "policyType": "Config",
  "attributes" : { "matching" : { "key1" : "value1" } },
  "policyConfigType": "Base",
  "onapName": "DCAE",
  "configName": "PCIMS_CONFIG_POLICY",
  "configBodyType": "JSON"
}' 'https://pdp:8081/pdp/api/createPolicy'


3.Push policy model

Push Policy
curl -k -v --silent -X PUT --header 'Content-Type: application/json' --header 'Accept: text/plain' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{
  "policyName": "com.PCIMS_CONFIG_POLICY",
  "policyType": "Base"
}' 'https://pdp:8081/pdp/api/pushPolicy'

4.Verify config policy is present

Fetch policy
curl -k -v --silent -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'ClientAuth: cHl0aG9uOnRlc3Q=' --header 'Authorization: Basic dGVzdHBkcDphbHBoYTEyMw==' --header 'Environment: TEST' -d '{ "configName": "PCIMS_CONFIG_POLICY",    "policyName": "com.Config_PCIMS_CONFIG_POLICY1*",    "requestID":"e65cc45a-9efb-11e8-98d0-529269ffa459"  }' 'https://pdp:8081/pdp/api/getConfig'

ConfigDB set-up:

The steps to set up configDB can be found in the attachment below.

Deployment Steps

  • Copy sonhms-blueprint and inputs file to /blueprints directory in DCAE bootstrap POD
  • Log-in to the DCAE bootstrap POD's main container
  • validate and deploy component

    Deploy component
     cfy install -b sonhms -d sonhms -i <inputsFilePath> <blueprintFilePath>
  • undeploy

    Undeploy component
    cfy uninstall sonhms


  • delete blueprint

    Delete blueprint
    cfy blueprints delete sonhms
    

Validation

The status of service can be checked after the deployment using command "kubectl get pods --namespace onap |grep son"

Verify
ubuntu@k8s-dcae-1:~$ kubectl get pods --namespace onap | grep son 
dep-s37e79facdf9b4820a933852d56127cd9-dcae-sonhms-59897b86qmv5p   1/1       Running            0          5h

Logs can be checked for dmaap connectivity

Logs
05:50:40.444 [pool-1-thread-2] INFO  c.a.n.c.c.impl.CambriaConsumerImpl - UEB GET /events/PCI-NOTIF-TOPIC-NGHBR-LIST-CHANGE-INFO/sonhms-cg/sonhms-cid
05:50:40.445 [pool-1-thread-2] INFO  c.att.nsa.apiClient.http.HttpClient - GET http://message-router:3904/events/PCI-NOTIF-TOPIC-NGHBR-LIST-CHANGE-INFO/sonhms-cg/sonhms-cid (anonymous)
05:50:40.448 [pool-2-thread-2] INFO  c.a.n.c.c.impl.CambriaConsumerImpl - UEB GET /events/unauthenticated.SEC_FAULT_OUTPUT/sonhms-cg/sonhms-cid
05:50:40.448 [pool-2-thread-2] INFO  c.att.nsa.apiClient.http.HttpClient - GET http://message-router:3904/events/unauthenticated.SEC_FAULT_OUTPUT/sonhms-cg/sonhms-cid (anonymous) 
05:50:40.450 [pool-3-thread-2] INFO  c.a.n.c.c.impl.CambriaConsumerImpl - UEB GET /events/unauthenticated.SEC_MEASUREMENT_OUTPUT/sonhms-cg/sonhms-cid
05:50:40.450 [pool-3-thread-2] INFO  c.att.nsa.apiClient.http.HttpClient - GET http://message-router:3904/events/unauthenticated.SEC_MEASUREMENT_OUTPUT/sonhms-cg/sonhms-cid (anonymous)
05:50:50.622 [pool-1-thread-2] INFO  c.att.nsa.apiClient.http.HttpClient ---> HTTP/1.1 200 OK
05:50:50.622 [pool-3-thread-2] INFO  c.att.nsa.apiClient.http.HttpClient ---> HTTP/1.1 200 OK
05:50:50.622 [pool-2-thread-2] INFO  c.att.nsa.apiClient.http.HttpClient ---> HTTP/1.1 200 OK





  • No labels