...
For the purposes of this guide, the VNFM Simulator will be used as the VNFM throughout. You will need to edit the below CURLs in order to match your specific VNFM's requirements, if using one other than the VNFM Simulator.
Step 1:
Exec into any pod on within your ONAP deployment that is connected to the primary ONAP network, this will give you access to using the internal service hostnames.
(Please note, for the following sets of CURLs this guide will be making use of the VNFM Simulator, you will need to edit the CURLs to match your specific VNFM's requirements, if they differ)
...
It is recommended that you view the "Onboarding ETSI Based NS" video before/alongside this section of the guide.
Step 1:
Login to the ONAP Portal. (Link: https://portal.api.simpledemo.onap.org:30225/ONAPPORTAL/login.htm (where "msb.api.simpledemo.onap.org" is set as the IP of your VM/host of your Portal component.)
Login: cs0008
Password: demo123456!
Step 2:
Select the SDC App. It is possible that your browser will block the scripts run by the Portal, you will need to enable them if it does.
Step 3:
Follow the onboarding guide below:
...
First you will need to retrieve the NSD ID from the ETSI Catalog Database in order to populate the Create Network Service CURL. The ETSI Catalog Database will be found within the Modeling DB container.
...
Once logged into the ETSI Catalog Database retrieve the data from the "catalog_nspackage" table, the value under the column "NSPACKAGEID" will be the NSD ID required as part of the Create Network Service CURL.
Step
...
2:
Next you will need to Exec into any pod on within your ONAP deployment that is connected to the primary ONAP network, this will give you access to using the internal service hostnames.
Step
...
3:
Send the following Create Network Service CURL Command, ensuring your deployment's Global Customer ID (from AAI) and your NSDID (from ETSI Catalog Database) replace the values within the <>:
...
You should receive a synchronous response back almost immediately. This response will contain the NS Instance ID of the NS Instance we just created, take note of this as it will be needed in the following steps.
Step 5:
Next you will need to create a JSON file on the pod, which you are exec'ed into, named "Payload.json" in the following example.
Payload.json:
{
After this step has been completed you should be able to log into the Marie-Db-Galera-0 Pod on your ONAP deployment, then connect to the "NFVO" database, and retrieve all data from the "ns_inst" table. This will show that your initial NS has been created.
Step 4:
Next you will need to create a JSON file on the pod, which you are exec'ed into, named "Payload.json" in the following example.
Payload.json:
{
"nsFlavourId": "default",
"locationConstraints": [{
...
"vnfProfileId": "b1bb0ce7-2222-4fa7-95ed-4840d70a1177",
"vnfInstanceName": "vgwVnf1",
"vnfInstanceDescription": "test",
"additionalParams": {
"vim_id": "CloudOwner_regionOne_3b368b5d42f94fe3ada6fb5abaf25455<cloud-owner>_<cloud-region-id>_<tenant_id>"
}
}]
}
In the above Payload.json, you must ensure that the "vnfProfileId" matches the VNF Descriptor ID found in the VNF CSAR which you onboarded as part of the VNF Onboarding section of this guide. The "vnfInstanceName" must match your VNF's name, and finally the "vim_id" must match be replaced with your AAI Data values for your deployment's Cloud-Owner and , Cloud-Region-Id .and Tenant-Id respectively.
Step
...
5:
Next you will need to send the following CURL command in order to trigger the instantiation of the Network Service. Ensure that you add the NS Instance ID received in the Create NS response to the URL Path (replacing <NS_INSTANCE_ID>), and match the Global Customer ID as before:
...
- SO-ETSI-NFVO-NS-LCM
- SO-VNFM-ADAPTER
- SO-VNFM-SIMULATOR (If making use of the VNFM-Simulator, alternatively the logs of the VNFM you are using)
Once the full instantiation has been completed, reconnect to the "NFVO" database, within the Marie-Db-Galera-0 pod on your ONAP deployment. Retrieving all data from the "ns_inst" table again, you should see that the "STATUS" field for your NS has changed to "Instantiated".
Step 6:
Next you will need to send the following CURL command in order to trigger the Termination of the Network Service. Ensure that you add the NS Instance ID received in the Create NS response to the URL Path (replacing <NS_INSTANCE_ID>), and match the Global Customer ID as before:
curl -k -X POST http://so-etsi-nfvo-ns-lcm.onap:9095/so/so-etsi-nfvo-ns-lcm/v1/api/nslcm/v1/ns_instances/<NS_INSTANCE_ID>/terminate -H "Authorization: Basic c28tZXRzaS1uZnZvLW5zLWxjbTpEdXJnMSREYWxhWG95ZA==" -H "accept: application/json" -H "Content-Type: application/json"
Similar to the Instantiate functionality, this is an asynchronous call and as such you will receive a response to your CURL command. As above, view the specified debug.log files in order to view the progress.
Once the full termination has been completed, reconnect to the "NFVO" database, within the Marie-Db-Galera-0 pod on your ONAP deployment. Retrieving all data from the "ns_inst" table again, you should see that the "STATUS" field for your NS has changed back to "Created".
Step 7:
Finally you will need to send the following CURL command in order to trigger the Deletion of the Network Service. Ensure that you add the NS Instance ID received in the Create NS response to the URL Path (replacing <NS_INSTANCE_ID>), and match the Global Customer ID as before:
curl -k -X DELETE http://so-etsi-nfvo-ns-lcm.onap:9095/so/so-etsi-nfvo-ns-lcm/v1/api/nslcm/v1/ns_instances/<NS_INSTANCE_ID> -H "Authorization: Basic c28tZXRzaS1uZnZvLW5zLWxjbTpEdXJnMSREYWxhWG95ZA==" -H "accept: application/json" -H "Content-Type: application/json"
Similar to the Create functionality, this is an synchronous call and as such you will receive the actual job response to your CURL command.
Once the full deletion has been completed, reconnect to the "NFVO" database, within the Marie-Db-Galera-0 pod on your ONAP deployment. Retrieving all data from the "ns_inst" table again, you should see that the NS Instance has now been deleted.
<DRAFT> Further Content Coming Below
...