blob: b0ec57239a2db39f183d38169189fa0233c1fc07 [file] [log] [blame]
Gary Wucd47a012018-11-30 07:18:36 -08001.. This work is licensed under a Creative Commons Attribution 4.0
2 International License. http://creativecommons.org/licenses/by/4.0
3
4.. _docs_ccvpn:
5
6CCVPN (Cross Domain and Cross Layer VPN)
7----------------------------------------
Gary Wue4a2df82018-11-29 12:49:09 -08008
yangyanyjfdae1482019-06-25 21:44:14 +08009Update for Dublin release
10~~~~~~~~~~~~~~~~~~~~~~~~~
11
121. Service model optimization
13
14In Dublin release,the design of CCVPN was optimized by having support of List type of Input in SDC.
15During onboarding and design phase, one end to end service is created using SDC. This service is
16composed of these two kinds of resources:
17 VPN resource
18 Site resource
19You can see the details from here https://wiki.onap.org/display/DW/Details+of+Targeted+Service+Template
20
212. Closed Loop in bandwidth adjustment
22Simulate alarm at the edge site branch and ONAP will execute close-loop automatically and trigger bandwidth to change higher.
23
243. Site Change
25Site can be add or delete according to the requirements
26
27
28More information about CCVPN in Dublin release:https://wiki.onap.org/pages/viewpage.action?pageId=45296665
29and the test case in Dublin can be found:https://wiki.onap.org/display/DW/CCVPN+Test+Cases+for+Dublin+Release
30And test status:https://wiki.onap.org/display/DW/CCVPN+Test+Status
31
32Note: CCVPN integration testing coversed service design, service creation and closed-loop bandwidth adjustments in Dublin release.
33The service termination and service change will continue to be tested in E release.
34During the integration testing, SDC, SO, SDC master branch are used which include the enhanced features for CCVPN use case.
35
36
Gary Wue4a2df82018-11-29 12:49:09 -080037Sevice used for CCVPN
yangyanyjfdae1482019-06-25 21:44:14 +080038~~~~~~~~~~~~~~~~~~~~~
Gary Wue4a2df82018-11-29 12:49:09 -080039
40- SOTNVPNInfraService, SDWANVPNInfraService and SIteService: https://wiki.onap.org/display/DW/CCVPN+Service+Design
41- WanConnectionService ( Another way to describe CCVPN in a single service form which based on ONF CIM ): https://wiki.onap.org/display/DW/CCVPN+Wan+Connection+Service+Design
42
43Description
44~~~~~~~~~~~
45Cross-domain, cross-layer VPN (CCVPN) is one of the use cases of the ONAP Casablanca release. This release demonstrates cross-operator ONAP orchestration and interoperability with third party SDN controllers and enables cross-domain, cross-layer and cross-operator service creation and assurance.
46
47The demonstration includes two ONAP instances, one deployed by Vodafone and one by China Mobile, both of which orchestrate the respective operator underlay OTN networks and overlay SD-WAN networks and peer to each other for cross-operator VPN service delivery.
48
49The CCVPN Use Case Wiki Page can be found here: https://wiki.onap.org/display/DW/CCVPN%28Cross+Domain+and+Cross+Layer+VPN%29+USE+CASE.
50
51The projects covered by this use case include: SDC, A&AI, UUI, SO, SDNC, OOF, Policy, DCAE(Holmes), External API, MSB
52
53How to Use
54~~~~~~~~~~
55Design time
56SOTNVPNInfraService, SDWANVPNInfraService and SIteService service Design steps can be found here: https://wiki.onap.org/display/DW/CCVPN+Service+Design
57WanConnectionService ( Another way to describe CCVPN in a single service form which based on ONF CIM ): https://wiki.onap.org/display/DW/CCVPN+Wan+Connection+Service+Design
58
59Run Time:
60All opertion will be triggerd by UUI, inlcuding service creation and termination, link management and topology network display.
61
62
63More details can be fonud here: https://wiki.onap.org/display/DW/CCVPN+Test+Guide
64
65Test Status and Plans
66~~~~~~~~~~~~~~~~~~~~~
67All test case covered by this use case: https://wiki.onap.org/display/DW/CCVPN+Integration+Test+Case
68
69And the test status can be found: https://wiki.onap.org/display/DW/CCVPN++-Test+Status
70
71Known Issues and Resolutions
72~~~~~~~~~~~~~~~~~~~~~~~~~~~~
731) AAI-1923. Link Management, UUI can't delete the link to external onap otn domain.
74
75For the manual steps provided by A&AI team, we should follow the steps as follow
76the only way to delete is using the forceDeleteTool shell script in the graphadmin container.
77First we will need to find the vertex id, you should be able to get the id by making the following GET request.
78
79GET /aai/v14/network/ext-aai-networks/ext-aai-network/createAndDelete/esr-system-info/test-esr-system-info-id-val-0?format=raw
80
81::
82
83{
84"results": [
85{
86"id": "20624",
87"node-type": "pserver",
88"url": "/aai/v13/cloud-infrastructure/pservers/pserver/pserverid14503-as988q",
89"properties": {
90}
91}
92]
93}
94
yangyanyjfdae1482019-06-25 21:44:14 +080095
Gary Wue4a2df82018-11-29 12:49:09 -080096Same goes for the ext-aai-network:
97
98GET /aai/v14/network/ext-aai-networks/ext-aai-network/createAndDelete?format=raw
99
100Retrieve the id from the above output as that will be the vertex id that you want to remove.
101
102Run the following command multiple times for both the esr-system-info and ext-aai-network:
103
104::
105
106kubectl exec -it $(kubectl get pods -lapp=aai-graphadmin -n onap --template 'range .items.metadata.name"\n"end' | head -1) -n onap gosu aaiadmin /opt/app/aai-graphadmin/scripts/forceDeleteTool.sh -action DELETE_NODE -userId YOUR_ID_ANY_VALUE -vertexId VERTEX_ID
107
108From the above, remove the YOUR_ID_ANY_VALUE and VERTEX_ID with your info.
109
1102) SDC-1955. Site service Distribution
111
112To overcome the Service distribution, the SO catalog has to be populated with the model information of the services and resources.
113a) Refering to the Csar that is generated in the SDC designed as per the detailes mentioned in the below link: https://wiki.onap.org/display/DW/CCVPN+Service+Design
114b) Download the Csar from SDC thus generated.
115c) copy the csar to SO sdc controller pod and bpmn pod
116 kubectl -n onap get pod|grep so
117 kubectl -n onap exec -it dev-so-so-sdc-controller-c949f5fbd-qhfbl /bin/sh
118
119 mkdir null/ASDC
120 mkdir null/ASDC/1
121 kubectl -n onap cp service-Sdwanvpninfraservice-csar.csar dev-so-so-bpmn-infra-58796498cf-6pzmz:null/ASDC/1/service-Sdwanvpninfraservice-csar.csar
122 kubectl -n onap cp service-Sdwanvpninfraservice-csar.csar dev-so-so-bpmn-infra-58796498cf-6pzmz:ASDC/1/service-Sdwanvpninfraservice-csar.csar
123
124d) populate model information to SO db
125 the db script example can be seen in https://wiki.onap.org/display/DW/Manual+steps+for+CCVPN+Integration+Testing
126
127The same would also be applicable for the integration of the client to create the service and get the details.
128Currently the testing has been performed using the postman calls to the corresponding APIs.
129
1303) SDC-1955 & SDC-1958. Site serivce parsing Error
131
132UUI: stored the csar which created based on beijing release under a fixed directory, If site serive can't parsed by SDC tosca parser, UUI will parse this default csar and get the input parameter
133a) Make an available csar file for CCVPN use case.
134b) Replace uuid of available files with what existing in SDC.
135c) Put available csar files in UUI local path (/home/uui).
136
Gary Wucd47a012018-11-30 07:18:36 -08001374) SO docker branch 1.3.5 has fixes for the issues 1SO-1248.
Gary Wue4a2df82018-11-29 12:49:09 -0800138
139After SDC distribution success, copy all csar files from so-sdc-controller:
140 connect to so-sdc-controller( eg: kubectl.exe exec -it -n onap dev-so-so-sdc-controller-77df99bbc9-stqdz /bin/sh )
141 find out all csar files ( eg: find / -name '*.csar' )
142 the csar files should be in this path: /app/null/ASDC/ ( eg: /app/null/ASDC/1/service-Sotnvpninfraservice-csar.csar )
143 exit from the so-sdc-controller ( eg: exit )
144 copy all csar files to local derectory ( eg: kubectl.exe cp onap/dev-so-so-sdc-controller-6dfdbff76c-64nf9:/app/null/ASDC/tmp/service-DemoService-csar.csar service-DemoService-csar.csar -c so-sdc-controller )
145
146Copy csar files, which got from so-sdc-controller, to so-bpmn-infra
147 connect to so-bpmn-infra ( eg: kubectl.exe -n onap exec -it dev-so-so-bpmn-infra-54db5cd955-h7f5s -c so-bpmn-infra /bin/sh )
148 check the /app/ASDC deretory, if doesn't exist, create it ( eg: mkdir /app/ASDC -p )
149 exit from the so-bpmn-infra ( eg: exit )
150 copy all csar files to so-bpmn-infra ( eg: kubectl.exe cp service-Siteservice-csar.csar onap/dev-so-so-bpmn-infra-54db5cd955-h7f5s:/app/ASDC/1/service-Siteservice-csar.csar )
151
1525) Manual steps in closed loop Scenario:
153Following steps were undertaken for the closed loop testing.
154a. Give controller ip, username and password, trust store and key store file in restconf collector collector.properties
155b. Updated DMAAP ip in cambria.hosts in DmaapConfig.json in restconf collector and run restconf collector
156c. Followed the steps provided in this link(https://wiki.onap.org/display/DW/Holmes+User+Guide+-+Casablanca#HolmesUserGuide-Casablanca-Configurations) to push CCVPN rules to holmes
157d. Followed the steps provided in this link(https://wiki.onap.org/display/DW/ONAP+Policy+Framework%3A+Installation+of+Amsterdam+Controller+and+vCPE+Policy) as reference to push CCVPN policies to policy module and updated sdnc.url, username and password in environment(/opt/app/policy/config/controlloop.properties.environment)
158As per wiki (Policy on OOM), push-policied.sh script is used to install policies. but I observed that CCVPN policy is not added in this script. So merged CCVPN policy using POLICY-1356 JIRA ticket. but policy is pushed by using push-policy_casablanca.sh script during integration test.
159It is found that the changes made were overwritten and hence had to patch the DG manually. This will be tracked by the JIRA SDNC-540.
160
161all above manual steps can be found https://wiki.onap.org/display/DW/Manual+steps+for+CCVPN+Integration+Testing