1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
|
.. This work is licensed under a Creative Commons Attribution 4.0
International License. http://creativecommons.org/licenses/by/4.0
Copyright 2020 CMCC Technologies Co., Ltd. All rights reserved.
.. _docs_vcpe_tosca_local:
vCPE Tosca Local Mode Use Case
------------------------------
Description
~~~~~~~~~~~
vCPE tosca use case is based on Network Enhanced Residential Gateway architecture specified in Technical Report 317 (TR-317), which defines how service providers deploy residential broadband services like High Speed Internet Access. The use case implementation has infrastructure services and customer service. The common infrastructure services are deployed first and shared by all customers. The use case demonstrates ONAP capabilities to design, deploy, configure and control sophisticated services.
More details on the vCPE Use Case can be found on wiki page https://wiki.onap.org/pages/viewpage.action?pageId=3246168
Local is the way how to distribute the network elements. Here we use local means we want upload the csar file to distribute the vnf and ns configurations.
Source Code
~~~~~~~~~~~
vcpe tosca local test scripts: https://git.onap.org/integration/tree/test/vcpe_tosca/local/vcpe_tosca_test.py
How to Use
~~~~~~~~~~
The use case has been automated by vcpe_tosca_test scripts. The followings are the main steps to run the use case in Integration lab environment:
1) Install ONAP CLI environment, open_cli_product is onap-dublin.
Use https://git.onap.org/integration/tree/test/vcpe_tosca/local/scripts/install-alpine.sh to install ONAP CLI.
2) Prepare openstack test environment.
* Create project(tenant) and user on openstack
Openstack Horizon--Identity--Projects page
.. image:: files/vcpe_tosca/create_project.png
Openstack Horizon--Identity--Users page
.. image:: files/vcpe_tosca/create_user.png
Manage Project Members
.. image:: files/vcpe_tosca/manage_project_user.png
* Create and upload image for VNF
Identify the version of the lab server, my lab server is Ubuntu 16.04.3 LTS.
::
root@onap-dengyuanhong-master:~# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"
Download the related ubuntu image from https://cloud-images.ubuntu.com/
.. image:: files/vcpe_tosca/image.png
Openstack Horizon--Project--Compute--Images page, create an image named image, the name must be the same with image which is defined in vnf csar file.
.. image:: files/vcpe_tosca/create_image.png
3) Update the configuration file vcpe_config.json under https://git.onap.org/integration/tree/test/vcpe_tosca/local/config
You should update the values if you want to run in your environment.
Firstly, identify the Region name you used on your openstack environment, our Region name is RegionOne, it will be used by the configuration file.
::
[wrsroot@controller-0 ~(keystone_admin)]$ openstack region list
+-----------+---------------+-------------+
| Region | Parent Region | Description |
+-----------+---------------+-------------+
| RegionOne | None | |
+-----------+---------------+-------------+
Secondly, update the values according to your environment.
::
"open_cli_product": set to CLI product you installed, onap-dublin is OK for this test.
"open_cli_home": set to the oclip home path,
"aai_url": set to msb ip and port you used,
"msb_url": set to msb ip and port you used,
"multicloud_url": set to msb ip and port you used,
"complex_name": set to any complex name you want to use, the name must be unique
"cloud_region_data": {
"RegionOne":(update to your Region name) {
"cloud-region-version": the cloud region version of your Cloud region, you can keep "titanium_cloud"
"esr-system-info-id": "1111ce1f-aa78-4ebf-8d6f-4b62773e9b01",
"service-url": the ip change to your openstack ip address,
"user-name": the user name you created on openstack,
"password": the user password you created on openstack,
"system-type": "VIM",
"ssl-insecure": true,
"cloud-domain": "Default",
"default-tenant": the project name you created on openstack,
"tenant-id": the project id you created on openstack,
"cloud-type": "openstack",
"identity-url": the ip change to your openstack ip address,
"system-status": "active"
}
}
"cloud-owner": set to any cloud name you want to use, , the name must be unique
"service_name": set to any service name you want to use, the name must be unique
"customer_name": set to any customer name you want to use, the name must be unique
"subscriber_name": set to any subscriber name you want to use, the name must be unique
"vfc-url": set to msb ip and port you used,
"vnfs": {
"vgw": {
"path": "/csar/vgw.csar", set to you vgw csar file path
"key": "key2",
"value": "value2"
},
"infra": {
"path": "/csar/infra.csar", set to you infra csar file path
"key": "key2",
"value": "value2"
},
"vbng": {
"path": "/csar/vbng.csar", set to you vbng csar file path
"key": "key2",
"value": "value2"
},
"vbrgemu": {
"path": "/csar/vbrgemu.csar", set to you vbrgemu csar file path
"key": "key2",
"value": "value2"
},
"vgmux": {
"path": "/csar/vgmux.csar", set to you vgmux csar file path
"key": "key2",
"value": "value2"
}
},
"ns": {
"key": "key1",
"value": "value1",
"path": "ns_vgw.csar", set to you ns csar file path
"name": "vcpe11"
},
"location": "VCPE22_RegionOne", set to CloudOwner_CloudRegion
"vnfm_params": {
"GVNFMDRIVER": {
"type": "gvnfmdriver",
"vendor": "vfc",
"version": "v1.0",
"url": set to msb ip and port you used,
"vim-id": "VCPE22_RegionOne", set to CloudOwner_CloudRegion
"user-name": "admin",
"user-password": "admin",
"vnfm-version": "v1.0"
}
}
4) The vnf csar file include Infra, vGW, vBNG, vBRGEMU and vGMUX, and the ns csar file is ns. https://git.onap.org/integration/tree/test/vcpe_tosca/local/csar
5) The key test script is vcpe_tosca_test.py which is under https://git.onap.org/integration/tree/test/vcpe_tosca/local
Run command is
::
python3 -m unittest vcpe_tosca_test.py
Before run the command, you should install requests: pip install requests, and update the path of configuration file vcpe_config.json.
5) Release of our environment
::
vfc-nslcm: 1.3.8
vfc-vnflcm: 1.3.8
vfc-gvnfm: 1.3.8
modeling-etsicatalog: 1.0.5
multicloud-framework: 1.5.1
multicloud-windriver: 1.5.5
cli: onap-dublin
Note
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1) You must authorize admin to vcpe_case when managing project members in openstack.
2) You should create an image named image before running the test script, the name must be the same with image which is defined in vnf csar file.
3) You should install ONAP CLI before running the script.
Known Issues and Workaround
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1) There is time out issue when terminating vnf, the solution is refer to
https://gerrit.onap.org/r/c/vfc/nfvo/driver/vnfm/gvnfm/+/105192
2) The process of terminating job is chaotic, the solution is refer to
https://gerrit.onap.org/r/c/vfc/nfvo/lcm/+/105449
|