blob: f529bc4a817c9e4adfadc00fe689e1cd3a62a579 [file] [log] [blame]
Vijay VKf9e43442019-05-22 22:10:29 +01001Installation
2============
Saravanan A32b6e8c2019-04-09 16:38:36 +05303
4SON handler microservice can be deployed using cloudify blueprint using bootstrap container of an existing DCAE deployment
5
Reshmasree100ea0e2019-05-15 17:57:41 +05306Deployment Prerequisites
7~~~~~~~~~~~~~~~~~~~~~~~~
Saravanan A32b6e8c2019-04-09 16:38:36 +05308
Reshmasree100ea0e2019-05-15 17:57:41 +05309- SON-Handler service requires DMAAP and Policy components to be functional.
Saravanan A32b6e8c2019-04-09 16:38:36 +053010
Reshmasree100ea0e2019-05-15 17:57:41 +053011- SON-hadler service requires the following dmaap topics to be present in the running DMAAP instance :
Saravanan A32b6e8c2019-04-09 16:38:36 +053012
13 1.PCI-NOTIF-TOPIC-NGHBR-LIST-CHANGE-INFO
14
15 2.unauthenticated.SEC_FAULT_OUTPUT
16
17 3.unauthenticated.SEC_MEASUREMENT_OUTPUT
18
19 4.DCAE_CL_RSP
20
Reshmasree100ea0e2019-05-15 17:57:41 +053021- Policy model required for SON-handler service should be created and pushed to policy component.Steps for creating and pushing the policy model:
Saravanan A32b6e8c2019-04-09 16:38:36 +053022 1.Login to PDP container and execute
23 kubectl exec -ti --namespace onap policy-pdp-0 bash
24 2.Create policy model
25 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 '{
26 "policyName": "com.PCIMS_CONFIG_POLICY",
27 "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\" }",
28 "policyType": "Config",
Reshmasree100ea0e2019-05-15 17:57:41 +053029 "attributes" : { "matching" : { "key1" : "value1" } },
Saravanan A32b6e8c2019-04-09 16:38:36 +053030 "policyConfigType": "Base",
31 "onapName": "DCAE",
32 "configName": "PCIMS_CONFIG_POLICY",
33 "configBodyType": "JSON"
34}' 'https://pdp:8081/pdp/api/createPolicy'
35
36 3.Push policy model
37 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 '{
38 "policyName": "com.PCIMS_CONFIG_POLICY",
39 "policyType": "Base"
40}' 'https://pdp:8081/pdp/api/pushPolicy'
41
42 4.Verify config policy is present
43
44 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'
45
Reshmasree100ea0e2019-05-15 17:57:41 +053046Deployment steps
47~~~~~~~~~~~~~~~~
48- Login to the bootstrap container
Saravanan A32b6e8c2019-04-09 16:38:36 +053049 kubectl exec -ti --namespace onap <bootstrap pod name> bash
Reshmasree100ea0e2019-05-15 17:57:41 +053050- Copy the blueprints and inputs file to the bootstrap container. The blueprint and a sample input file can be found under dpo/blueprints directory of son-hanler project. (https://gerrit.onap.org/r/dcaegen2/services/son-handler)
51- Deploy the microservice into the cloudify using the following command
Saravanan A32b6e8c2019-04-09 16:38:36 +053052 cfy install -d sonhms -b sonhms -i <inputs file path> <blueprint file path>
Reshmasree100ea0e2019-05-15 17:57:41 +053053- Deployment status of the microservice can be found from kubernetes pods status (MS will be deployed as a k8s pod in the kubernetes environment under the same namespace as the DCAE environment).
Saravanan A32b6e8c2019-04-09 16:38:36 +053054 kubectl get pods --namespace onap
Reshmasree100ea0e2019-05-15 17:57:41 +053055- To uninstall the microservice
Saravanan A32b6e8c2019-04-09 16:38:36 +053056 cfy uninstall sonhms
Reshmasree100ea0e2019-05-15 17:57:41 +053057- To delete the blueprint from the cloudify instance
Saravanan A32b6e8c2019-04-09 16:38:36 +053058 cfy blueprints delete sonhms
59
60
Reshmasree100ea0e2019-05-15 17:57:41 +053061Application Configurations
62--------------------------
Saravanan A32b6e8c2019-04-09 16:38:36 +053063
64Streams_subscribes Dmaap topics that the MS will consume messages
65
66Streams_publishes Dmaap topics that the MS will publish messages
67
68postgres.host Host where the postgres database is running
69
70postgres.port Host where the postgres database is running
71
72postgres.username Postgres username
73
74postgres.password Postgres password
75
76sonhandler.pollingInterval Polling Interval for consuming dmaap messages
77
78sonhandler.pollingTimeout Polling timeout for consuming dmaap messages
79
80sonhandler.numSolutions Number for solutions for OOF optimization
81
82sonhandler.minCollision Minimum collision criteria to trigger OOF
83
84sonhandler.minConfusion Minimum confusion criteria to trigger OOF
85
86sonhandler.maximumClusters Maximum number of clusters MS can process
87
88sonhandler.badThreshold Bad threshold for Handover success rate
89
90sonhandler.poorThreshold Poor threshold for Handover success rate
91
92sonhandler.namespace Namespace where MS is going to be deployed
93
94sonhandler.sourceId Source ID of the Microservice (Required for Sending request to OOF)
95
96sonhandler.dmaap.server Location of message routers
97
98sonhandler.bufferTime Buffer time for MS to wait for more notifications when the optimization criteria is not met
99
100sonhandler.cg Consumer group for the MS to consume message from dmaap
101
102sonhandler.cid Consumer ID for the MS to consume message from dmaap
103
104sonhandler.configDbService Location of the config DB (protocol, host & port)
105
106sonhandler.oof.service Location of OOF (protocol, host & port)
107
108sonhandler.optimizers Optimizer to trigger in OOF
109
110