---TEST STATUS for Dublin Release ----
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. A File Consumer node which is a simulated PM file subscriber that subscribe to Data Router feed
. (committed goal)For 3GPP formatted measurement data and for consumers that prefer such data in VES format, an optional and receive PM files.
Image Added
Use Case 2:
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 or SFTP. The collected data files are published internally on a DMaaP Data Router (DR) feed. The PM mapper receives the files by subscribing to a Data Router feed. The 3GPP PM Mapper micro-service
is planned that can will extract selected (filtered) 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 (stretch goal)for consumers that prefer such data in perf3gpp VES format.
Image Added
Use Case 1 High Level End-to-End 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. | |
4a | Ensure that a simulated File Consumer is able to subscribe and consume the PM file(s) from the Data Router. | |
5 | Verify the Data File Collector Metadata file is valid | |
Image Removed
Deployment:
Test environment requirements for above test cases:
- xNF simulator for test cases: ftpes capable server.
- with VES 6.x 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 files
- DMaaP R3, at minimum need DR running and configured for Bulk PM support
- DCAE R3, MR with support for VES 6.x spec
- DCAE R3, Data File Collector installed and configured
Use Case preconditions:
E2E Sequence Diagram
Gliffy Diagram |
---|
size | 600 |
---|
name | 5G E2E |
---|
pagePin | 1 |
---|
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 |
and is received by Data File . | |
2 | Ensure that the unauthenticated.VES_NOTIFICATION_OUTPUT topic is present once it received "File Ready" VES notification from VES Collector. | |
Not yet tested23 | 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. | |
Not yet tested34 | Ensure that the PM xml file(s) are published to the Data Router. | |
Not yet tested4Ensure that File Consumer simulator is able to subscribe and consume the PM file(s) from the Data Router. | Data File Collector Metadata file is valid | |
6 | 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) | |
7 | Verify that "simulated PM VES Consumer" receive VES events from Message Router topic. | |
E2E Sunny Day Scenario Sequence Diagram:
Gliffy Diagram |
---|
| |
---|
size | 1200 |
---|
name | 5G E2E |
---|
pagePin | 7 |
---|
|
JIRAs:
Jira |
---|
server | ONAP JIRA |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | INT-832 |
---|
|
Jira |
---|
server | ONAP JIRA |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | DCAEGEN2-564 |
---|
|
Jira |
---|
server | ONAP JIRA |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | DCAEGEN2-566 |
---|
|
Jira |
---|
server | ONAP JIRA |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | DCAEGEN2-567 |
---|
|
Jira |
---|
server | ONAP JIRA |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | DMAAP-28 |
---|
|
Jira |
---|
server | ONAP JIRA |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | VNFRQTS-513 |
---|
|
Jira |
---|
server | ONAP JIRA |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | INT-649 |
---|
|
Jira |
---|
server | ONAP JIRA |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | VNFRQTS-263 |
---|
|
Jira |
---|
server | ONAP JIRA |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 425b2b0a-557c-3c0c-b515-579789cceedb |
---|
key | VNFRQTS-264 |
---|
|
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.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:
Detailed Description End-to-End Feature Integration Testcases :
Detail End-to-End feature integration Testcases :
<To-Do>Test Case ID | Bulk_PM_E2E_01 |
---|
Test Case Name | Send FileReadyEvent to Data File VES Collector |
Description | Ensure that the 'FileReady' VES event is sent from the simulated xNF via to the VES collector and is received by Data File Collector. |
Release | Casablanca |
Pre-conditions | From the above section "Deployment" a test environment with all the required components , - xNF will be simulated by a script |
Testing Steps | - Simulate a xNF
- VES Collector subscribes to Topic XXX on the Message Router.
- File collector Subscribes to Topic XXX on the Message Router
|
Expected Result | The xNF is simualted, and it sends a VES 6.x 'fileReady' event.The VES Collector receives the fileReady event and forwards it the Message Router.The File Collector receives the 'fileReady' event on the Message Router Topic XX(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 |
Provided by
0203 |
---|
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 |
.Expected Result | - The FTPes is successfully initiated.
- The xml PM file is successfully downloaded.
|
and its environment is still running |
Testing Steps |
|
- The File Collector initiates a FTPes session with the simulated xNF.
- The File Collector downloads an XML file.
| 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.Check that DFC successfully publishes to the DR > cat /opt/log/application.log
| The String "Publish to DR successful!" is in the log file
|
|
Conclusion (Pass /Fail) | PASS |
Testing Lab |
Provided by
0304 |
---|
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 |
Provided by
0404a |
---|
Test Case Name | Simulated File Consumer receives the xml PM file(s) |
Description | Ensure that |
the a simulated File Consumer |
simulator is 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_05 |
---|
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 conforms to the schema |
|
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 PM-Mapper successfully receives uncompressed the PM XML file |
Description | Verify 3GPP PM Mapper successfully receives the uncompressed PM xml file from the DataRouter |
Release | Dublin |
Pre-conditions | The Previous Test case has passed and its environment is still running |
Testing Steps |
Steps | Expected Result |
---|
1.Verify that the PM Mapper docker container is online | 1. PM Mapper container is online | 2.Check in the PM Mapper application log file for "XML validation successful Event" | 2.The string "XML validation successful Event" is in the PM Mapper application log file |
|
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 PM-Mapper successfully publishes a PMMeasResult VES Messageonto the Message Router Topic "PM_MAPPER"
|
Description | Verify that the PM-Mapper successfully publishes the VES Message on the topic "PM_MAPPER" |
Release | Dublin |
Pre-conditions | The Previous Test case has passed and its environment is still running Table |
Testing Steps |
Steps | Expected Result |
---|
1.Verify that the "PM_MAPPER" exists on the Message Router | 1. "PM_MAPPER" topic exists | 2.Verify that on the Message Router Topic "PM_MAPPER" an event "perf3gpp_RnNode-Ericsson_pmMeasResult" is published | 2. The VES pmMeasResult event is published on the MR Topic "PM_MAPPER" |
|
Conclusion (Pass /Fail) | PASS |
Testing Lab |
Provided by 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.
Anchor |
---|
| BulkPME2E-Performance Verification |
---|
| BulkPME2E-Performance Verification |
---|
|
- To arrive at the xNF’s that 5G - Bulk PM E2E can handle, two scenarios must be fulfilled and measured.
1.X Number of xNF’s sending a VES FileReady Event every 15 minutes to an ONAP until PM-Mapper has finished processing the last PM file that was sent in that ROP.
2.ONAP looses connection to X Number of xNF’s and ONAP gains re-connection to the xNF after 1 day, this gives a maximum number of new PM files in the VES FileReady event 96*X Number of xNF’s.
1.When adding 70 new xNF’s every 1.5hours to mimic xNFs being added to an ONAP deployment up to 420 xNF (420 new PM files every 15 minutes) , it takes 4 minutes for all the 420 xNF PM Files to be processed in the Bulk PM e2e Flow.
2.For a spike of 420 xNF’s, its took Bulk PM 5 hours to process the backlog i.e all the initial 40,320 (96* 420) PM files and 420 new PM files every 15 minutes.
For more information on how the 420 xNF's was obtained see the slidepack Integration Meeting.pptx