The Bulk PM feature consists of two main parts---TEST STATUS for Dublin Release ----
Use Case 1:
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 A File Consumer node which is a simulated PM file subscriber that subscribe to Data Router feed 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
(committed goal for Dublin release)JIRAs:
Jira Legacy |
---|
server | System Jira |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | INT-649 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | INT-832 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | DCAEGEN2-564 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | DCAEGEN2-566 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | DCAEGEN2-567 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | DMAAP-28 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | VNFRQTS-263 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | VNFRQTS-264 |
---|
|
Image Removed
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
Gliffy |
---|
size | 600 |
---|
name | 5G E2E |
---|
pagePin | 4 |
---|
|
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.. The 3GPP PM Mapper micro-service will extract selected (filtered) measurements from a 3GPP XML file and publish them as VES events on a DMaaP Message Router topic 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 | |
Use Case 2 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. | |
5 | Verify the 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) | |
Done2Ensure that the unauthenticated.VES_NOTIFICATION_OUTPUT topic is present once it received "File Ready" VES notification from VES CollectorVerify that "simulated PM VES Consumer" receive VES events from Message Router topic. | |
Done | 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 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) | Status |
---|
colour | Grey |
---|
title | Not Started |
---|
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 OKDate: Sun, 23 Sep 2018 10:10:26 GMTContent-Type: application/jsonAccept: */*breadcrumbId: ID-de84f90a4556-45507-1537643129080-0-21587User-Agent: curl/7.47.0X-CSI-Internal-WriteableRequest: trueContent-Length: 87Server: 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 MachineTest 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/C122018-09-22 21:16:07.815 INFO 1 --- [elastic-2] o.o.d.c.d.s.DmaapReactiveWebClient : Content-Type=application/json2018-09-22 21:16:07.816 INFO 1 --- [elastic-2] o.o.d.c.d.s.DmaapReactiveWebClient : HTTP request headers: {Content-Type=[application/json]}E2E Sunny Day Scenario Sequence Diagram:
Gliffy |
---|
| |
---|
size | 1200 |
---|
name | 5G E2E |
---|
pagePin | 7 |
---|
|
JIRAs:
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | INT-832 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | DCAEGEN2-564 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | DCAEGEN2-566 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | DCAEGEN2-567 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | DMAAP-28 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | VNFRQTS-513 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | INT-649 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
key | VNFRQTS-263 |
---|
|
Jira Legacy |
---|
server | System Jira |
---|
columns | key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution |
---|
serverId | 4733707d-2057-3a0f-ae5e-4fd8aff50176 |
---|
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 :
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.062 INFO 811 DEBUG 1 --- [reactor-http-client-epoll-15] o.o.d.c.ddatafile.sftp.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 -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 | 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 | 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 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_04a |
---|
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) # |
|
curl -k https://${DR_PROV_IP}:8443/internal/provShould 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.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 |
05Test 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 | Casablanca07 |
---|
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 |
|
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 MachineTest Case ID | Bulk_PM_E2E_06 |
---|
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.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 | 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.
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