Table of Contents |
---|
Overview
The PM Subscription Handler (PMSH) is a micro service written in Python, which allows for the definition and unlocking of PM subscriptions on one or more network function (NF) instances.
Architecture Diagram
Artifacts
...
The following components must be up and running to successfully deploy PMSH
- DCAE Platform
- SDC
- CLAMP
- POLICY
- A&AI (Should also have at least 1 PNF registered)
Deployment Steps
In the Frankfurt release, there is a workaround required in order to deploy the PM Subscription Handler. The monitoring policy for the micro service microservice needs to be manually inserted into CONSUL. This requires two steps:
...
Code Block | ||||
---|---|---|---|---|
| ||||
curl -X PUT \ http://<onap-ip>:<consul-port>/v1/kv/dcae-pmsh:policy \ -H 'Content-Type: application/json' \ -d '{ "subscription": { "subscriptionName": "test-subscription", "administrativeState": "LOCKED", "fileBasedGP": 15, "fileLocation": "/pm/pm.xml", "nfFilter": { "swVersions": [ "1.0.0" ], "nfNames": [ "^pnf.*" ] }, "measurementGroups": [{ "measurementGroup": { "measurementTypes": [{ "measurementType": "countera" }, { "measurementType": "counterb" } ], "managedObjectDNsBasic": [{ "DN": "dna" }, { "DN": "dnb" } ] } }, { "measurementGroup": { "measurementTypes": [{ "measurementType": "counterc" }, { "measurementType": "counterd" } ], "managedObjectDNsBasic": [{ "DN": "dnc" }, { "DN": "dnd" } ] } } ] } }' |
Deployment of pmsh PMSH can then be done using Dashboard UI/Cloudify UI or CloudifyUI or via CLI. Below steps are based on CLI.
...
After deployment, verify if pmsh POD and mongoDB pod are PMSH pod is running correctly
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
root@k8s-rancher:~# kubectl get pods -n onap | egrep "pmsh"
dep-dcae-pmsh-6b58cbc7f5-lm92g 2/2 Running 0 149m
|
We can curl message router to verify that PMSH has published an event to it's configured topic. By default this is unauthenticated.DCAE_CL_OUTPUT
Code Block | ||||
---|---|---|---|---|
| ||||
curl -k https://message-router:3905/events/unauthenticated.DCAE_CL_OUTPUT/1/1 |
If PMSH is working correctly we should see an activation event
Code Block | ||||
---|---|---|---|---|
| ||||
["{\"nfName\":\"pnf500\",\"policyName\":\"pmsh-operational-policy\",\"changeType\":\"CREATE\",\"subscription\":{\"administrativeState\":\"LOCKED\",\"subscriptionName\":\"test-subscription\",\"measurementGroups\":[{\"measurementGroup\":{\"measurementTypes\":[{\"measurementType\":\"countera\"},{\"measurementType\":\"counterb\"}],\"managedObjectDNsBasic\":[{\"DN\":\"dna\"},{\"DN\":\"dnb\"}]}},{\"measurementGroup\":{\"measurementTypes\":[{\"measurementType\":\"counterc\"},{\"measurementType\":\"counterd\"}],\"managedObjectDNsBasic\":[{\"DN\":\"dnc\"},{\"DN\":\"dnd\"}]}}],\"fileBasedGP\":15,\"fileLocation\":\"/pm/pm.xml\"},\"closedLoopControlName\":\"pmsh-control-loop\"}"] |
And then check the logs to see if it can connect to DMaaP, polling for events.
...