diff options
-rw-r--r-- | nokiav2/docs/development.rst | 4 | ||||
-rw-r--r-- | nokiav2/docs/integration.rst | 67 | ||||
-rw-r--r-- | nokiav2/docs/onboarding.rst | 69 | ||||
-rw-r--r-- | nokiav2/docs/sample/aai.create.customer.request.json | 6 | ||||
-rw-r--r-- | nokiav2/docs/sample/aai.create.tenant.request.json | 8 | ||||
-rw-r--r-- | nokiav2/docs/sampleVnfs/simple/simple.csar | bin | 12044 -> 12047 bytes | |||
-rw-r--r-- | nokiav2/docs/sampleVnfs/simple/vfc.ns.create.request.json | 4 | ||||
-rw-r--r-- | nokiav2/docs/sampleVnfs/simple/vfc.ns.heal.request.json | 13 | ||||
-rw-r--r-- | nokiav2/docs/sampleVnfs/simple/vfc.ns.instantiation.request.json | 2 | ||||
-rw-r--r-- | nokiav2/docs/sampleVnfs/simple/vfc.vnf.scale.request.json | 8 | ||||
-rw-r--r-- | nokiav2/docs/sampleVnfs/simpleDual/simpleDual.csar | bin | 11367 -> 11371 bytes | |||
-rw-r--r-- | nokiav2/docs/sampleVnfs/simpleDual/vfc.ns.heal.request.json | 8 | ||||
-rw-r--r-- | nokiav2/docs/samplevnf.rst | 14 | ||||
-rw-r--r-- | nokiav2/docs/so.rst | 2 | ||||
-rw-r--r-- | nokiav2/docs/vnfintegration.rst | 2 | ||||
-rw-r--r-- | nokiav2/docs/vnflcm.rst | 25 |
16 files changed, 191 insertions, 41 deletions
diff --git a/nokiav2/docs/development.rst b/nokiav2/docs/development.rst index c16ed935..12c0c29e 100644 --- a/nokiav2/docs/development.rst +++ b/nokiav2/docs/development.rst @@ -20,6 +20,10 @@ Useful links - Jenkins daily release https://jenkins.onap.org/view/vfc/job/vfc-nfvo-driver-svnfm-nokiav2-master-drv-vnfm-nokiav2-release-version-java-daily/ +- Jenkins snapshot docker release: https://jenkins.onap.org/view/vfc/job/vfc-nfvo-driver-svnfm-nokiav2-docker-vnfm-nokiav2-master-merge-docker/ + +- Jenkins daily docker release: https://jenkins.onap.org/view/vfc/job/vfc-nfvo-driver-svnfm-nokiav2-docker-vnfm-nokiav2-master-release-version-docker-daily-no-sonar/ + - Sonar: https://sonar.onap.org/dashboard?id=org.onap.vfc.nfvo.driver.vnfm.svnfm.nokiav2%3Avfc-nfvo-driver-vnfm-svnfm-nokiav2 - Nexus IQ reports: https://nexus-iq.wl.linuxfoundation.org/assets/index.html#/management/view/application/vfc-nfvo-driver-svnfm-nokiav2 diff --git a/nokiav2/docs/integration.rst b/nokiav2/docs/integration.rst index 2ce93e80..df366bf6 100644 --- a/nokiav2/docs/integration.rst +++ b/nokiav2/docs/integration.rst @@ -162,12 +162,19 @@ Add the VNFM driver to ONAP - Note: Cloud credentials are supplied by the VNF integrator. - To obtain the value of the Auth URL field and the tenant id (which will be required later), follow these steps: + - Note: The actual steps depend on the OpenStack Dashboard version and vendor. + - Go to OpenStack Horizon Dashboard. + - Select the Project main tab. + - Select the API Access tab. + - Click View Credentials. + - Copy the value of Authentication URL and paste it in the Auth URL field. + - Note the value of Project ID: this is the <tenantId> which will be required later (Repeat this step for all tenants planned to be used within the VIM.) - Click Save. @@ -185,13 +192,47 @@ Add the VNFM driver to ONAP - Using a REST client of your choice, send a request to the following URL: https://aai.api.simpledemo.onap.org:8443/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/<cloudOwner>/<cloudRegion>/tenants/tenant/<tenantId> - download the content of the request: `aai.create.tenant.request.json <sample/aai.create.tenant.request.json>` + - In the request URL and in the content of the request, substitute <tenantId>, <cloudRegion> and <cloudOwner> with the respective values. + - HTTP method: PUT + - Set the following values in the Header of the request: - basic auth AAI:AAI + - X-FromAppId : any + + - X-TransactionId: any + - Content-type: application/json + + - Accept: application/json + +- Create customer in A&AI + + - Note: + + - The customer may already exists + + - Using a REST client of your choice, send a request to the following URL: https://aai.api.simpledemo.onap.org:8443/aai/v11/business/customers/customer/123456 + + - download the content of the request: `aai.create.customer.request.json <sample/aai.create.customer.request.json>` + + - In the downloaded content of the request, substitute <tenantName>, <tenantId>, <cloudRegion> and <cloudOwner> with the respective values. + + - HTTP method: PUT + + - Set the following values in the Header of the request: + + - basic auth AAI:AAI + + - X-FromAppId : any + + - X-TransactionId: any + + - Content-type: application/json + - Accept: application/json - Register the VNFM as an external system: @@ -231,7 +272,7 @@ Add the VNFM driver to ONAP +-----------------+------------------------------------------+ | URL | <authUrl>_<lcmUrl>_<lcnUrl>_<catalogUrl> | +-----------------+------------------------------------------+ -| VIM | any | +| VIM | <cloudOwner>_<cloudRegion> | +-----------------+------------------------------------------+ | certificate URL | | +-----------------+------------------------------------------+ @@ -246,8 +287,23 @@ Add the VNFM driver to ONAP - Determine the UUID of the VNFM: - - Access the following URL: http://msb.api.simpledemo.onap.org:9518/api/aai-esr-server/v1/vnfms - - Look for the previously registered VNFM and note the value of <vnfmId>. + - Using a REST client of your choice, send a request to the following URL: https://aai.api.simpledemo.onap.org:8447/aai/v11/external-system/esr-vnfm-list/esr-vnfm?depth=all + + - HTTP method: GET + + - Set the following values in the Header of the request: + + - basic auth AAI:AAI + + - X-FromAppId : any + + - X-TransactionId: any + + - Content-type: application/json + + - Accept: application/json + + - Look for the previously registered VNFM and note the value of (vnfm-id) <vnfmId>. Configure the SVNFM driver (generic) @@ -259,6 +315,7 @@ Configure the SVNFM driver (generic) - Determine the IMAGE ID: - Execute the following command: docker images + - Find the required image and note the IMAGE ID. - Start the driver: @@ -275,6 +332,7 @@ Configure the SVNFM driver (generic) - Determine the identifier of the container: - Execute the following command: docker ps + - Find the required container and note the CONTAINER ID (first column/first row on the list). - Verify if the VNFM driver has been successfully started by executing the following commands: @@ -289,6 +347,7 @@ Configure the SVNFM driver (generic) - Verify if the SVNFM is registered into MSB: - Go to http://msb.api.simpledemo.onap.org/msb + - Check if NokiaSVNFM micro service is present in the boxes. @@ -306,4 +365,4 @@ This step is executed instead of the "Configure the SVNFM driver (generic)" in c - Restart the VNFM service - - Execute the following command: ps -ef | grep java |
\ No newline at end of file + - Execute the following command: kill -9 `ps -ef | grep java | grep -v grep | awk '{print $2}'`
\ No newline at end of file diff --git a/nokiav2/docs/onboarding.rst b/nokiav2/docs/onboarding.rst index 6e3ade3c..4abf8faf 100644 --- a/nokiav2/docs/onboarding.rst +++ b/nokiav2/docs/onboarding.rst @@ -1,29 +1,15 @@ Onboard NS ========== -Prepare environment -------------------- -- Create customer in A&AI +Create licensing model +---------------------- - - tool: Postman - - method: PUT - - URL: https://aai.api.simpledemo.onap.org:8443/aai/v11/business/customers/customer/123456 - - Headers - - - basic auth AAI:AAI - - X-FromAppId : any - - Content-type: application/json - - Accept: application/json - - - body: :download:`aai.create.customer.request.json <sample/aai.create.customer.request.json>` - - - Edit tenant id, cloud owner, cloud region - Log into ONAP portal with designer role (cs0008) - Create License model - - ONBOARD / Create new VLP + - ONBOARD / Create new VLM - name = select a name easy to remember @@ -31,37 +17,53 @@ Prepare environment - name = any - - License key group / add new licencse key group + - License key group / add new license key group - name = any + - type = universal - Feature groups / add feature group - name = any + - part number = 123456 + - manufacturer reference number = 123456 + - entitlement pool (add any with arrow button) + - license key group (add any with arrow button) + - save - License agreements / Add license agreement - name = any + - license term unlimited + - feature groups (add any with arrow button) - Check in (lock icon at top) + - Submit (tick icon at top) +On-board VNF +------------ + - On-board / Create new VSP (vendor software package) - Create VSP - name = select a name easy to remember + - vendor = name of the license model + - category = Database (IMPORTANT NOT TO CHANGE THIS (linked to the global customer)) + - onboarding procedure = network package + - description = any - Upload CSAR @@ -71,9 +73,13 @@ Prepare environment - Select licence - overview / software product details / license agreement + - licenses + - set license version, license agreement, feature groups + - click on save icon at top + - commit & submit using icons at top - Create VF @@ -83,43 +89,62 @@ Prepare environment - set General / Vendor model number to CBAM package VNFD ID - set sVNFM property assignment / inputs / nf_type set NokiaSVNFM + - commit + - submit for testing - Test VF - Log in as tester role + - Select VF + - Start testing button + - Accept testing +Design network service +---------------------- + - Create Service - - Log in as designer role + - Log in with designer role (cs0008) + - home / add / add service + - name = select a name easy to remember + - project code = 123456 + - Check in & check out (required to save a safe point to restore to if something goes wrong) - Add created VF (Composition) - drag icon to main picture (be patient only drag once, if multiple icons appear restart procedure ) + - Check in + - Open service again and verify that the VF is part of the service under composition - Submit for testing + - Test Service - - Log in as tester role (jm0007) + - Log in with tester role (jm0007) + - start testing & accept - Approve service - - Log in as governence user (gv0001) + - Log in with governance role (gv0001) + - Select service and press approve - Distribute the service - - Log in as operations personen (op0001) + - Log in with operations role (op0001) + - Select service and push distribute + - Click on monitor (verify that the state of the service is distributed) diff --git a/nokiav2/docs/sample/aai.create.customer.request.json b/nokiav2/docs/sample/aai.create.customer.request.json index 35773843..73848de8 100644 --- a/nokiav2/docs/sample/aai.create.customer.request.json +++ b/nokiav2/docs/sample/aai.create.customer.request.json @@ -10,9 +10,9 @@ "relationship": [{ "related-to": "tenant", "relationship-data": [ - {"relationship-key": "cloud-region.cloud-owner", "relationship-value": "Nokia"}, - {"relationship-key": "cloud-region.cloud-region-id", "relationship-value": "RegionOne"}, - {"relationship-key": "tenant.tenant-id", "relationship-value": "2ca57d2dbeda4e8a84739319bab769f4"} + {"relationship-key": "cloud-region.cloud-owner", "relationship-value": "<cloudOwner"}, + {"relationship-key": "cloud-region.cloud-region-id", "relationship-value": "<cloudRegion>"}, + {"relationship-key": "tenant.tenant-id", "relationship-value": "<tenantId>"} ] }] } diff --git a/nokiav2/docs/sample/aai.create.tenant.request.json b/nokiav2/docs/sample/aai.create.tenant.request.json index afe2f546..cebbb4b6 100644 --- a/nokiav2/docs/sample/aai.create.tenant.request.json +++ b/nokiav2/docs/sample/aai.create.tenant.request.json @@ -1,6 +1,6 @@ { - "cloud-owner": "Nokia", - "cloud-region-id": "RegionOne", - "tenant-id": "2ca57d2dbeda4e8a84739319bab769f4", - "tenant-name": "VFC" + "cloud-owner": "<cloudOwner>", + "cloud-region-id": "<cloudRegion>", + "tenant-id": "<tenantId>", + "tenant-name": "<tenantName>" }
\ No newline at end of file diff --git a/nokiav2/docs/sampleVnfs/simple/simple.csar b/nokiav2/docs/sampleVnfs/simple/simple.csar Binary files differindex 13d35620..da3637fe 100644 --- a/nokiav2/docs/sampleVnfs/simple/simple.csar +++ b/nokiav2/docs/sampleVnfs/simple/simple.csar diff --git a/nokiav2/docs/sampleVnfs/simple/vfc.ns.create.request.json b/nokiav2/docs/sampleVnfs/simple/vfc.ns.create.request.json index 81e9abc4..846c5a16 100644 --- a/nokiav2/docs/sampleVnfs/simple/vfc.ns.create.request.json +++ b/nokiav2/docs/sampleVnfs/simple/vfc.ns.create.request.json @@ -1,6 +1,6 @@ { - "nsName": "cbam_ns_dual_2", - "csarId": "0479b45c-85cb-4dae-979a-e44618b1a49f", + "nsName": "cbam_ns_simple_1", + "csarId": "2ef6e605-7b83-4692-94a6-32c1ff72b6bb", "context": { "globalCustomerId" : "123456", "serviceType" : "Database" diff --git a/nokiav2/docs/sampleVnfs/simple/vfc.ns.heal.request.json b/nokiav2/docs/sampleVnfs/simple/vfc.ns.heal.request.json new file mode 100644 index 00000000..49c79212 --- /dev/null +++ b/nokiav2/docs/sampleVnfs/simple/vfc.ns.heal.request.json @@ -0,0 +1,13 @@ +{ + "healVnfData": { + "vnfInstanceId": "98dfd286-e4dc-437b-9607-15fb3964485d", + "cause": "cause", + "additionalParams": { + "action": "auto", + "actionvminfo": { + "vmid": "95a8f4bd-3384-48b9-8c97-8493ee6e7535", + "vmname": "CBAM-59fa6b5b2c004c689ed30df5eeff69ef-simple-0" + } + } + } +}
\ No newline at end of file diff --git a/nokiav2/docs/sampleVnfs/simple/vfc.ns.instantiation.request.json b/nokiav2/docs/sampleVnfs/simple/vfc.ns.instantiation.request.json index 34d16a47..28d75500 100644 --- a/nokiav2/docs/sampleVnfs/simple/vfc.ns.instantiation.request.json +++ b/nokiav2/docs/sampleVnfs/simple/vfc.ns.instantiation.request.json @@ -1,5 +1,5 @@ { - "nsInstanceId": "69c095e8-e24f-4e0b-821e-f6f8d342a929", + "nsInstanceId": "23fd3ae5-c261-4662-9fcd-35107d33954f", "additionalParamForNs": { "location": "Nokia_RegionOne", "61fbe643-8c92-4b95-a90a-d65f1ba359a9": "{ \"computeResourceFlavours\": [ { \"vnfdVirtualComputeDescId\": \"server_compute\", \"resourceId\": \"m1.small\" } ], \"extVirtualLinks\": [ { \"extCps\": [ { \"cpdId\": \"universal_ecp\" } ], \"resourceId\": \"pub_net\" } ], \"zones\": [ { \"resourceId\": \"compute-a\", \"id\": \"zoneInfoId\" } ], \"flavourId\": \"scalable\", \"vimType\": \"OPENSTACK_V3_INFO\", \"instantiationLevel\": \"default\", \"softwareImages\": [ { \"resourceId\": \"ubuntu.16.04\", \"vnfdSoftwareImageId\": \"server_image\" } ] }" diff --git a/nokiav2/docs/sampleVnfs/simple/vfc.vnf.scale.request.json b/nokiav2/docs/sampleVnfs/simple/vfc.vnf.scale.request.json new file mode 100644 index 00000000..3140f4a4 --- /dev/null +++ b/nokiav2/docs/sampleVnfs/simple/vfc.vnf.scale.request.json @@ -0,0 +1,8 @@ +{ + "scaleVnfData" : + { + "type" : "SCALE_OUT", + "aspectId" : "simpleAspect", + "numberOfSteps" : "1" + } +}
\ No newline at end of file diff --git a/nokiav2/docs/sampleVnfs/simpleDual/simpleDual.csar b/nokiav2/docs/sampleVnfs/simpleDual/simpleDual.csar Binary files differindex 3545d237..7b0b57f0 100644 --- a/nokiav2/docs/sampleVnfs/simpleDual/simpleDual.csar +++ b/nokiav2/docs/sampleVnfs/simpleDual/simpleDual.csar diff --git a/nokiav2/docs/sampleVnfs/simpleDual/vfc.ns.heal.request.json b/nokiav2/docs/sampleVnfs/simpleDual/vfc.ns.heal.request.json index e62665db..583ef6bb 100644 --- a/nokiav2/docs/sampleVnfs/simpleDual/vfc.ns.heal.request.json +++ b/nokiav2/docs/sampleVnfs/simpleDual/vfc.ns.heal.request.json @@ -1,12 +1,12 @@ { "healVnfData": { - "vnfInstanceId": "05901205-622e-495b-9673-25c433c1c35a", + "vnfInstanceId": "9c45cbf7-e5df-44a0-a469-89b80ded8d8c", "cause": "cause", "additionalParams": { - "action": "restartvm", + "action": "auto", "actionvminfo": { - "vmid": "vmId", - "vmname": "vmname" + "vmid": "fef21eb0-d020-4790-8d43-3c1a9aa634dc", + "vmname": "CBAM-a5ec0302fe3a46c7a8f60b28d61fe25c-simple-1" } } } diff --git a/nokiav2/docs/samplevnf.rst b/nokiav2/docs/samplevnf.rst index 6561575a..6a4717e0 100644 --- a/nokiav2/docs/samplevnf.rst +++ b/nokiav2/docs/samplevnf.rst @@ -5,15 +5,29 @@ Simple ------ - CSAR: :download:`csar <sampleVnfs/simple/simple.csar>` + - NS creation request on VF-C API :download:`create.json <sampleVnfs/simple/vfc.ns.create.request.json>` (several fields must be changed to fit actual environment) + - NS instantiation request on VF-C API :download:`instantiate.json <sampleVnfs/simple/vfc.ns.instantiation.request.json>` (several fields must be changed to fit actual environment) +- NS heal request on VF-C API: :download:`heal.json <sampleVnfs/simple/vfc.ns.heal.request.json>` (several fields must be changed to fit actual environment) + +- VNF scale request on VF-C API: :download:`scale.json <sampleVnfs/simple/vfc.vnf.scale.request.json>` (several fields must be changed to fit actual environment) + Simple Dual ----------- - CSAR: :download:`csar <sampleVnfs/simpleDual/simpleDual.csar>` + - NS creation request on VF-C API :download:`create.json <sampleVnfs/simpleDual/vfc.ns.create.request.json>` (several fields must be changed to fit actual environment) + - NS instantiation request on VF-C API :download:`instantiate.json <sampleVnfs/simpleDual/vfc.ns.instantiation.request.json>` (several fields must be changed to fit actual environment) + - NS heal request on VF-C API: :download:`heal.json <sampleVnfs/simpleDual/vfc.ns.heal.request.json>` (several fields must be changed to fit actual environment) + - VNF scale request on VF-C API: :download:`scale.json <sampleVnfs/simpleDual/vfc.vnf.scale.request.json>` (several fields must be changed to fit actual environment) +VOLTE IMS +--------- + +- TODO
\ No newline at end of file diff --git a/nokiav2/docs/so.rst b/nokiav2/docs/so.rst index 1f18d94a..809f4d7d 100644 --- a/nokiav2/docs/so.rst +++ b/nokiav2/docs/so.rst @@ -6,7 +6,9 @@ Requirements on the VNF package ------------------------------- - the VNFD must have a instantiation level named default + - each VDU must have a corresponding software image named <vduname>_image + - the VNF integrator must use the availability zones to specify the location of the VNFCs. One availability zone will be defined for each VDU diff --git a/nokiav2/docs/vnfintegration.rst b/nokiav2/docs/vnfintegration.rst index a846b265..02282685 100644 --- a/nokiav2/docs/vnfintegration.rst +++ b/nokiav2/docs/vnfintegration.rst @@ -15,7 +15,7 @@ Manual - the VNF must declare the externalVnfmId and onapCsarId as modifyable attribute in CBAM package. Each should have a default value. (The concrete value will be filled out by CBAM) - each operation must declare a jobId additional parameter in CBAM package (value will be filled out by CBAM) -- the heal operation must declare the jobId, vmName and action parameters in CBAM package (values will be filled out by CBAM) +- the heal operation must declare the jobId, vmName, vnfcId and action parameters in CBAM package (values will be filled out by CBAM) - each operation (including built-in) must include the following section as the last pre_action (all JS are provided by CBAM) .. code-block:: console diff --git a/nokiav2/docs/vnflcm.rst b/nokiav2/docs/vnflcm.rst new file mode 100644 index 00000000..c9ef995e --- /dev/null +++ b/nokiav2/docs/vnflcm.rst @@ -0,0 +1,25 @@ +NS life-cycle management +========================= + +NS creation +----------- + + +NS instantiation +---------------- + + +VNF scaling +----------- + + +VNF healing +----------- + + +NS termination +-------------- + + + + |