You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 70
Next »
The Bulk PM feature consists of two main parts:
- Event-driven bulk transfer of monitoring data from an xNF to ONAP/DCAE. A micro-service will listen for 'FileReady' VES events sent from an xNF via the VES collector. Once files become available the collector micro-service will fetch them using protocol such as FTPES (committed) or SFTP. The collected data files are published internally on a DMaaP Data Router (DR) feed. (committed goal for Casablanca release)
- For 3GPP formatted measurement data and for consumers that prefer such data in VES format, an optional 3GPP PM Mapper micro-service is planned that can extract selected measurements from a 3GPP XML file and publish them as VES events on a DMaaP Message Router topic. The mapper receives the files by subscribing to a Data Router feed (committed goal for Dublin release)
JIRAs:
INT-832
-
Getting issue details...
STATUS
DCAEGEN2-564
-
Getting issue details...
STATUS
DCAEGEN2-566
-
Getting issue details...
STATUS
DCAEGEN2-567
-
Getting issue details...
STATUS
DMAAP-28
-
Getting issue details...
STATUS
VNFRQTS-513
-
Getting issue details...
STATUS
INT-649
-
Getting issue details...
STATUS
VNFRQTS-263
-
Getting issue details...
STATUS
VNFRQTS-264
-
Getting issue details...
STATUS
![](/download/attachments/38121543/image2019-1-28_12-56-59.png?version=1&modificationDate=1548680219000&api=v2)
Deployment:
Test environment requirements for above test cases:
- xNF simulator for test cases: FTPes capable server.
- with VES 7.0.1 support for 'fileReady' event.
- E.g. xNF able to produce data files and send VES fileReady events,
- E.g. xNF emulator able to produce 'fileReady' notification events including updated events, or a series or predefined VES events at periodic intervals.
- sample data files for collection. E.g. 3gpp PM file(s)
- DMaaP R3, at minimum need DR running and configured for Bulk PM support
- DCAE R3, MR with support for VES 7.0.1 spec
- DCAE R3, Data File Collector installed and configured
This environment can be set up by following the steps below.
- Clone the integration/csit repo (git clone ssh://gerrit.onap.org:29418/integration/csit).
- Run: .run-csit.sh plans/usecases/5G-bulkpm
Use Case preconditions:
E2E Sunny Day Scenario Sequence Diagram
High Level End-to-End feature integration Testcases :
# | Test Case | Status |
---|
1 | Ensure that the 'FileReady' VES event is sent from the simulated xNF via the VES collector. | |
2 | Ensure that the unauthenticated.VES_NOTIFICATION_OUTPUT topic is present once it received "File Ready" VES notification from VES Collector. | |
3 | Ensure that the Data File Collector starts to download the xml PM file(s) from the simulated xNF once it receives the 'FileReady' VES event via the VES collector. | |
4 | Ensure that the PM xml file(s) are published to the Data Router. | |
5 | Ensure that a simulated File Consumer is able to subscribe and consume the PM file(s) from the Data Router. | |
6 | Verify the Data File Collector Metadata file is valid | |
7 | Verify 3GPP PM Mapper subscribes to feed on the Data Router and maps the PM xml file onto the Message Router as a VES Message(s) | |
Detailed Description End-to-End Feature Integration Testcases :
Test Case ID | Bulk_PM_E2E_01 |
---|
Test Case Name | Send FileReadyEvent to VES Collector |
Description | Ensure that the 'FileReady' VES event is sent from the simulated xNF to the VES collector. |
Release | Casablanca |
Pre-conditions | From the above section "Deployment" a test environment with all the required components - xNF (simulated with sftp or sftpe ), VES Collector are all started. |
Testing Steps | Steps | Expected Result |
---|
Send FileExist VES event to VES collector to simulate what the xNF would initiate. Example File Ready VES Notification: curl -i -X POST -H "Content-Type:application/json" -d '{ "event": { "commonEventHeader": { "version": "4.0.1", "vesEventListenerVersion": "7.0.1", "domain": "notification", "eventName": "Noti_RnNode-Ericsson_FileReady", "eventId": "FileReady_1797490e-10ae-4d48-9ea7-3d7d790b25e1", "lastEpochMicrosec": 8745745764578, "priority": "Normal", "reportingEntityName": "otenb5309", "sequence": 0, "sourceName": "oteNB5309", "startEpochMicrosec": 8745745764578, "timeZoneOffset": "UTC+05.30" }, "notificationFields": { "changeIdentifier": "PM_MEAS_FILES", "changeType": "FileReady", "notificationFieldsVersion": "2.0", "arrayOfNamedHashMap": [ { "name": "pm.xml.gz", "hashMap":{ "location": "sftp://admin:admin@172.18.0.2:22/pm.xml.gz", "compression": "gzip", "fileFormatType": "org.3GPP.32.435#measCollec", "fileFormatVersion": "V10" } } ] } } }' 'http://172.17.0.2:8080/eventListener/v7'
| The VES Collector accepted the "File Ready" Notification send by xNF. We should get 202 response from the VES Collector. e.g. HTTP/1.1 202 Content-Type: application/json Content-Length: 8 Date: Sat, 22 Sep 2018 21:16:07 GMT
|
|
Conclusion (Pass /Fail) | PASS |
Testing Lab | https://jenkins.onap.org/view/CSIT/ Ubuntu Docker Machine |
Test Case ID | Bulk_PM_E2E_02 |
---|
Test Case Name | DmaaP topic for unauthenticated.VES_NOTIFICATION_OUTPUT |
Description | Ensure that the unauthenticated.VES_NOTIFICATION_OUTPUT topic is present on the DMaaP Message Router once it receives "File Ready" VES notification from VES Collector.
|
Release | Casablanca |
Pre-conditions | 1 .The DmaaP Message Router is up and running. 2. The Previous Test case has passed and its environment is still running |
Testing Steps
| Steps | Expected Result |
---|
- Check on the DmaaP topic, it should contain "unauthenticated.VES_NOTIFICATION_OUTPUT"
curl -i http://172.18.0.6:3904/topics
| Expect result code 200, e.g. HTTP/1.1 200 OK Date: Sun, 23 Sep 2018 10:10:26 GMT Content-Type: application/json Accept: */* breadcrumbId: ID-de84f90a4556-45507-1537643129080-0-21587 User-Agent: curl/7.47.0 X-CSI-Internal-WriteableRequest: true Content-Length: 87 Server: Jetty(9.3.z-SNAPSHOT)
{"topics": [ "__consumer_offsets", "unauthenticated.VES_NOTIFICATION_OUTPUT" ]} | If you wish to manually check the messages under unauthenticated.VES_NOTIFICATION_OUTPUT topic in DmaaP. # curl http://172.18.0.6:3904/events/unauthenticated.VES_NOTIFICATION_OUTPUT/OpenDcae-c12/C12 | Note: If you manually check the message on the Topic, you will consume it and therefore DFC wont be able to consume it. ["{\"event\":{\"commonEventHeader\":{\"startEpochMicrosec\":8745745764578,\"eventId\":\"FileReady_1797490e-10ae-4d48-9ea7-3d7d790b25e1\",\"timeZoneOffset\":\"UTC+05.30\",\"internalHeaderFields\":{\"collectorTimeStamp\":\"Sat, 09 22 2018 07:09:15 UTC\"},\"priority\":\"Normal\",\"version\":\"4.0.1\",\"reportingEntityName\":\"otenb5309\",\"sequence\":0,\"domain\":\"notification\",\"lastEpochMicrosec\":8745745764578,\"eventName\":\"Noti_RnNode-Ericsson_FileReady\",\"vesEventListenerVersion\":\"7.0.1\",\"sourceName\":\"oteNB5309\"},\"notificationFields\":{\"notificationFieldsVersion\":\"2.0\",\"changeType\":\"FileReady\",\"changeIdentifier\":\"PM_MEAS_FILES\",\"arrayOfNamedHashMap\":[{\"name\":\"pm.xml.gz\",\"hashMap\":{\"location\":\"sftp://admin:admin@172.18.0.2:22/pm.xml.gz\",\"fileFormatType\":\"org.3GPP.32.435#measCollec\",\"fileFormatVersion\":\"V10\",\"compression\":\"gzip\"}}]}}}"]
|
|
Conclusion (Pass /Fail) | PASS |
Testing Lab | https://jenkins.onap.org/view/CSIT/ Ubuntu Docker Machine |
Test Case ID | Bulk_PM_E2E_03 |
---|
Test Case Name | Download of xml PM file(s) from xNF when 'FileReady' VES event is received. |
Description | Ensure that the Data File Collector starts to download the xml PM file(s) from the simulated xNF once it receives the 'FileReady' VES event via the VES collector. |
Release | Casablanca |
Pre-conditions | The Previous Test case has passed and its environment is still running |
Testing Steps | Steps | Expected Result |
---|
- File Collector get xNF info ( sftp address, PM file location etc ) from the
Dmaap topic unauthenticated.VES_NOTIFICATION_OUTPUT
# docker exec -it dfc /bin/sh > cat /opt/log/application.log
| Data File Collector fetches messages from Dmaap Topic. 2018-09-22 21:16:07.815 INFO 1 --- [elastic-2] o.o.d.c.d.s.DmaapReactiveWebClient : Request: GET http://172.18.0.6:3904/events/unauthenticated.VES_NOTIFICATION_OUTPUT/OpenDcae-c12/C12 2018-09-22 21:16:07.815 INFO 1 --- [elastic-2] o.o.d.c.d.s.DmaapReactiveWebClient : Content-Type=application/json 2018-09-22 21:16:07.816 INFO 1 --- [elastic-2] o.o.d.c.d.s.DmaapReactiveWebClient : HTTP request headers: {Content-Type=[application/json]} 2018-09-22 21:16:08.062 INFO 1 --- [reactor-http-client-epoll-15] o.o.d.c.d.s.DmaapReactiveWebClient : Response Status 200 2018-09-22 21:16:08.064 INFO 1 --- [reactor-http-client-epoll-15] o.o.d.c.d.s.DmaapConsumerJsonParser : raw message from message router: ["{"event":{"commonEventHeader":{"startEpochMicrosec":8745745764578,"eventId":"FileReady_1797490e-10ae-4d48-9ea7-3d7d790b25e1","timeZoneOffset":"UTC+05.30","internalHeaderFields":{"collectorTimeStamp":"Sat, 09 22 2018 09:16:07 UTC"},"priority":"Normal","version":"4.0.1","reportingEntityName":"otenb5309","sequence":0,"domain":"notification","lastEpochMicrosec":8745745764578,"eventName":"Noti_RnNode-Ericsson_FileReady","vesEventListenerVersion":"7.0.1","sourceName":"oteNB5309"},"notificationFields":{"notificationFieldsVersion":"2.0","changeType":"FileReady","changeIdentifier":"PM_MEAS_FILES","arrayOfNamedHashMap":[{"name":"pm.xml.gz","hashMap":{"location":"sftp://admin:admin@172.18.0.2:22/pm.xml.gz","fileFormatType":"org.3GPP.32.435#measCollec","fileFormatVersion":"V10","compression":"gzip"}}]}}}"]
| 2. File Collector start downloading PM files from xNF. > cat /opt/log/application.log | 2018-09-22 21:16:08.811 DEBUG 1 --- [reactor-http-client-epoll-15] o.o.d.c.datafile.ftp.SftpClient : File pm.xml.gz Download Successfull from xNF | 3. File Collector store downloaded files to /target directory inside container. # docker exec dfc /bin/sh -c "ls /target | grep .gz" | The pm file is listed in the directory on the DFC docker container. pm.xml.gz |
|
Conclusion (Pass /Fail) | PASS |
Testing Lab | https://jenkins.onap.org/view/CSIT/ Ubuntu Docker Machine |
Test Case ID | Bulk_PM_E2E_04 |
---|
Test Case Name | File Collector informs Data Router of xml PM file(s) |
Description | Ensure that the PM xml file(s) are published to the Data Router. |
Release | Casablanca |
Pre-conditions | The Previous Test case has passed and its environment is still running |
Testing Steps | Steps | Expected Result |
---|
1 .The File Collector subscribes to the Data Router. # curl -v -X POST -H "Content-Type:application/vnd.att-dr.feed" -H "X-ATT-DR-ON-BEHALF-OF:dradmin" --data-ascii @$WORKSPACE/test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/createFeed.json --post301 --location-trusted -k https://${DR_PROV_IP}:8443 Where @$WORKSPACE/test/csit/plans/dcae-bulkpm/bulkpm-suite/assets/createFeed.json is e.g. { "name": "DefaultFeed", "version": "m1.0", "description": "Default feed", "business_description": "Default Feed", "suspend": false, "deleted": false, "changeowner": true, "authorization": { "classification": "unclassified", "endpoint_addrs": [], "endpoint_ids": [ { "password": "dradmin", "id": "dradmin" }] } } | 1.The File Collector is successfully subscribed to the Data Router. # curl -k https://${DR_PROV_IP}:8443/internal/prov Should contain https://dmaap-dr-prov/publish/1 | 2. File Collector informs Data Router of new xml PM files(s) # curl -v -X POST -H "Content-Type:application/vnd.att-dr.subscription" -H "X-ATT-DR-ON-BEHALF-OF:dradmin" --data-ascii @/tmp/addSubscriber.json --post301 --location-trusted -k https://${DR_PROV_IP}:8443/subscribe/1 Where e.g. /tmp/addSubsriber.json is { "delivery":{ "url":"http://192.168.16.9:7070", "user":"LOGIN", "password":"PASSWORD", "use100":true }, "follow_redirect":false, "metadataOnly":false, "suspend":false, "groupid":0, "links":{ "self": "https://dmaap-dr-prov/subscribe/1", "log": "https://dmaap-dr-prov/feedlog/1", "feed": "https://dmaap-dr-prov/feed/1" }, "subscriber":"admin" | 2. The xml PM file(s) is published on the Data Router. # curl -k https://${DR_PROV_IP}:8443/internal/prov Should contain http://X.X.X.X:7070 Where X.X.X.X is the IP-address of the Data Router File Subscriber Simulator. |
|
Conclusion (Pass /Fail) | PASS |
Testing Lab | https://jenkins.onap.org/view/CSIT/ Ubuntu Docker Machine |
Test Case ID | Bulk_PM_E2E_05 |
---|
Test Case Name | Simulated File Consumer receives the xml PM file(s) |
Description | Ensure that a simulated File Consumer is able to subscribe and consume the PM file(s) from the Data Router. |
Release | Casablanca |
Pre-conditions | The Previous Test case has passed and its environment is still running |
Testing Steps | Steps | Expected Result |
---|
- A simulated File Consumer subscribes to the Data Router e.g. where the IP-
address is of the datarouter-prov docker container # curl -k https://172.100.0.3:8443/internal/prov
| 1.The simulated File Consumer is successfully subscribed to the Data Router. | 2. A simulated File consumer receives notification of a xml PM file(s) # docker exec -it subscriber-node bash > ls -la opt/app/subscriber/delivery/ | 2.The simulated File Consumer is successfully able to consume the xml PM file(s) from the Data Router. The pm file is visible on the simulated File Consumer. pm.xml.gz
|
|
Conclusion (Pass /Fail) | PASS |
Testing Lab | https://jenkins.onap.org/view/CSIT/ Ubuntu Docker Machine |
Test Case ID | Bulk_PM_E2E_06 |
---|
Test Case Name | Verify the Data File Collector Metadata file is valid |
Description | Verify that the Metadata for the PM xml file is correct |
Release | Dublin |
Pre-conditions | The Previous Test case has passed and its environment is still running |
Testing Steps | Steps | Expected Result |
---|
1.Copy the Metadata file from the File Consumer docker container | 1. File copied to the instance. | 2.Verify that the Metadata complies to the schema | 2. The Metadata comforms to the schema |
|
Conclusion (Pass /Fail) | PASS |
Testing Lab | https://jenkins.onap.org/view/CSIT/ Ubuntu Docker Machine |
Test Case ID | Bulk_PM_E2E_07 |
---|
Test Case Name | Verify 3GPP PM Mapper maps the PM xml file onto the Message Router as a Ves Message(s) |
Description | Verify 3GPP PM Mapper subscribes to feed on the Data Router and maps the PM xml file onto the Message Router as a Ves Message(s) |
Release | Dublin |
Pre-conditions | The Previous Test case has passed and its environment is still running |
Testing Steps | Steps | Expected Result |
---|
1.Verify 3GPP PM Mapper subscribes to feed on the Data Router | 1. 3GPP PM Mapper subscribed to feed on the Data Router | 2.Verify 3GPP PM Mapper maps the pm XMLfile to a topic on the Message Router as a VES Message(s) | 2.The pm XML file is successfully maped to VES Messages on the Message Router Topic |
|
Conclusion (Pass /Fail) | - |
Testing Lab | https://jenkins.onap.org/view/CSIT/ Ubuntu Docker Machine |
Information:
For more information on the DMaaP API's see this link DMaaP API
Next Step(s):
Write Tests cases to verify BulkPM on an ONAP environment.